summaryrefslogtreecommitdiffstats
path: root/LayoutTests/dom
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2010-05-13 10:55:31 +0100
committerSteve Block <steveblock@google.com>2010-05-13 10:55:31 +0100
commit356b8defb51adf939e0e8c114c189d95d923f754 (patch)
tree3707cebf0383e08246709a20ed17c510fdd57170 /LayoutTests/dom
parent901afcec28e282052ffa6542c21b025cead9b4c0 (diff)
downloadexternal_webkit-356b8defb51adf939e0e8c114c189d95d923f754.zip
external_webkit-356b8defb51adf939e0e8c114c189d95d923f754.tar.gz
external_webkit-356b8defb51adf939e0e8c114c189d95d923f754.tar.bz2
Add dom/html LayoutTests to Android tree.
The new link prefetching tests have already been added to dom/html/level2/html on Android (though they may be relocated during upstreaming). This change pulls the entire dom/html directory (at r58033) into Android to keep the merge process as simple as possible. All tests currently pass. Change-Id: I6908177dd626e0e45f72c12503b3a115bb879715
Diffstat (limited to 'LayoutTests/dom')
-rw-r--r--LayoutTests/dom/html/level1/core/documentgetdoctypenodtd-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/documentgetdoctypenodtd.html10
-rw-r--r--LayoutTests/dom/html/level1/core/documentgetdoctypenodtd.js110
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref.html48
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref.js143
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1.js140
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi.html48
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi.js143
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1.js140
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild1.js132
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild2.js127
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild3-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild3.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild3.js138
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild4-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild4.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild4.js152
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild5-expected.txt3
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild5.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild5.js141
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild6-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild6.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrappendchild6.js127
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrchildnodes1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrchildnodes1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrchildnodes1.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrchildnodes2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrchildnodes2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrchildnodes2.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrclonenode1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrclonenode1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrclonenode1.js132
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment.js138
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatetextnode-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatetextnode.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatetextnode.js127
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2.js127
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attreffectivevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attreffectivevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attreffectivevalue.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrfirstchild-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrfirstchild.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrfirstchild.js127
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrgetvalue1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrgetvalue1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrgetvalue1.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrgetvalue2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrgetvalue2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrgetvalue2.js146
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrhaschildnodes-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrhaschildnodes.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrhaschildnodes.js114
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore1.js140
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore2.js141
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore3-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore3.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore3.js146
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore4-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore4.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore4.js147
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore5-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore5.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore5.js153
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore6-expected.txt3
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore6.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore6.js142
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore7-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore7.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrinsertbefore7.js160
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrlastchild-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrlastchild.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrlastchild.js127
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrname-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrname.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrname.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrnormalize-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrnormalize.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrnormalize.js133
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrparentnodenull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrparentnodenull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrparentnodenull.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrremovechild1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrremovechild1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrremovechild1.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrremovechild2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrremovechild2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrremovechild2.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrreplacechild1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrreplacechild1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrreplacechild1.js135
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrreplacechild2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrreplacechild2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrreplacechild2.js141
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrsetvalue1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrsetvalue1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrsetvalue1.js135
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrsetvalue2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrsetvalue2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrsetvalue2.js138
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue.js121
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataappenddata-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataappenddata.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataappenddata.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength.js125
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata.js132
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatagetdata-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatagetdata.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatagetdata.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatagetlength-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatagetlength.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatagetlength.js119
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.js129
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue.js120
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue.js119
-rw-r--r--LayoutTests/dom/html/level1/core/hc_commentgetcomment-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_commentgetcomment.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_commentgetcomment.js144
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateattribute.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatecomment-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatecomment.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatecomment.js120
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateelement-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateelement.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateelement.js121
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive.js132
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatetextnode-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatetextnode.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentcreatetextnode.js120
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetdoctype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetdoctype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetdoctype.js149
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength.js110
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength.js221
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue.js120
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetimplementation-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetimplementation.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetimplementation.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetrootnode-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetrootnode.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentgetrootnode.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull.js129
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml.js125
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementaddnewattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementaddnewattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementaddnewattribute.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementassociatedattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementassociatedattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementassociatedattribute.js119
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue.js119
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetattributenode-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetattributenode.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetattributenode.js114
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull.js115
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementempty-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementempty.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementempty.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname.js112
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist.js144
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch.js110
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue.js134
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgettagname-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgettagname.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementgettagname.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception.js125
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1.js119
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnormalize-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnormalize.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnormalize.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnormalize2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnormalize2.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnormalize2.js129
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnotfounderr-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnotfounderr.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementnotfounderr.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattribute-expected.txt3
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattribute.js113
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattributenode-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattributenode.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementremoveattributenode.js119
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes.js144
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue.js113
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrievetagname-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrievetagname.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementretrievetagname.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull.js120
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr.js147
-rw-r--r--LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1.js133
-rw-r--r--LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1.js144
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange.js141
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem.js121
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr.js139
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes.js127
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem.js150
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem.js152
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull.js121
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue.js132
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists.js134
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr.js149
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchild-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchild.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchild.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists.js160
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment.js158
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument-expected.txt3
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument.js144
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor.js132
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute.js120
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodename.js115
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodetype.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodes-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodes.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodes.js149
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild.js159
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodesempty-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodesempty.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodechildnodesempty.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied.js149
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue.js145
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext.js121
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes.js135
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodename.js134
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodetype.js133
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue.js133
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename.js114
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype.js114
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue.js120
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute.js111
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodename.js111
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype.js110
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue.js112
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes.js145
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodename.js125
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodetype.js112
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue.js109
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetfirstchild-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetfirstchild.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetfirstchild.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetlastchild-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetlastchild.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetlastchild.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetnextsibling-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetnextsibling.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetnextsibling.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetownerdocument-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetownerdocument.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetownerdocument.js129
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull.js115
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodehaschildnodes-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodehaschildnodes.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodehaschildnodes.js113
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbefore-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbefore.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbefore.js153
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment.js141
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype.js136
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument-expected.txt3
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument.js147
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists.js151
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor.js135
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent.js133
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero.js135
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength.js129
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero.js133
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem.js129
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem.js133
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelisttraverselist-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelisttraverselist.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodelisttraverselist.js149
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeparentnode-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeparentnode.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeparentnode.js117
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeparentnodenull-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeparentnodenull.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodeparentnodenull.js114
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechild-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechild.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechild.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename.js128
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildnode-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildnode.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildnode.js160
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent.js129
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechild-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechild.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechild.js127
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype.js136
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument-expected.txt3
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument.js147
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists.js155
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor.js135
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodename-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodename.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodename.js113
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodetype-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodetype.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodetype.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodevalue-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodevalue.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodetextnodevalue.js118
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue01.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue01.js114
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue02.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue02.js114
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue03.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue03.js138
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue04.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue04.js132
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue05.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue05.js114
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue06.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue06.js112
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue07.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue07.js134
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue08.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_nodevalue08.js134
-rw-r--r--LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1.js133
-rw-r--r--LayoutTests/dom/html/level1/core/hc_notationssetnameditem1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_notationssetnameditem1.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_notationssetnameditem1.js144
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset.js130
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds.js131
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textparseintolistofelements-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textparseintolistofelements.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textparseintolistofelements.js169
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextfour-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextfour.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextfour.js122
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextone-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextone.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextone.js126
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextthree-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextthree.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittextthree.js124
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittexttwo-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittexttwo.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textsplittexttwo.js123
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textwithnomarkup-expected.txt2
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textwithnomarkup.html48
-rw-r--r--LayoutTests/dom/html/level1/core/hc_textwithnomarkup.js122
-rw-r--r--LayoutTests/dom/html/level1/core/resources/COPYRIGHT.html106
-rw-r--r--LayoutTests/dom/html/level1/core/selfhtml.js721
-rw-r--r--LayoutTests/dom/html/level2/core/createAttributeNS06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/createAttributeNS06.html48
-rw-r--r--LayoutTests/dom/html/level2/core/createAttributeNS06.js117
-rw-r--r--LayoutTests/dom/html/level2/core/createDocument08-expected.txt3
-rw-r--r--LayoutTests/dom/html/level2/core/createDocument08.html25
-rw-r--r--LayoutTests/dom/html/level2/core/createDocument08.js107
-rw-r--r--LayoutTests/dom/html/level2/core/createDocumentType04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/createDocumentType04.html25
-rw-r--r--LayoutTests/dom/html/level2/core/createDocumentType04.js108
-rw-r--r--LayoutTests/dom/html/level2/core/createElementNS06.js119
-rw-r--r--LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1.html48
-rw-r--r--LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1.js141
-rw-r--r--LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1.html48
-rw-r--r--LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1.js143
-rw-r--r--LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1.html48
-rw-r--r--LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1.js124
-rw-r--r--LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1.html48
-rw-r--r--LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1.js121
-rw-r--r--LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2.html48
-rw-r--r--LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2.js114
-rw-r--r--LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1.html48
-rw-r--r--LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1.js141
-rw-r--r--LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1.html48
-rw-r--r--LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1.js143
-rw-r--r--LayoutTests/dom/html/level2/core/resources/COPYRIGHT.html106
-rw-r--r--LayoutTests/dom/html/level2/core/selfhtml.js721
-rw-r--r--LayoutTests/dom/html/level2/core/setAttributeNS10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/core/setAttributeNS10.html48
-rw-r--r--LayoutTests/dom/html/level2/core/setAttributeNS10.js120
-rw-r--r--LayoutTests/dom/html/level2/events/DocumentEventCast01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/DocumentEventCast01.html48
-rw-r--r--LayoutTests/dom/html/level2/events/DocumentEventCast01.js104
-rw-r--r--LayoutTests/dom/html/level2/events/EventTargetCast01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/EventTargetCast01.html48
-rw-r--r--LayoutTests/dom/html/level2/events/EventTargetCast01.js104
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent01.html48
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent01.js105
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent02.html48
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent02.js107
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent03.html48
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent03.js107
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent04.html48
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent04.js107
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent05.html48
-rw-r--r--LayoutTests/dom/html/level2/events/createEvent05.js107
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent01.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent01.js118
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent02.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent02.js118
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent03.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent03.js119
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent04.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent04.js119
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent05.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent05.js119
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent06.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent06.js119
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent07.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent07.js119
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent08.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent08.js126
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent09-expected.txt3
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent09.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent09.js126
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent10.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent10.js127
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent11.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent11.js120
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent12.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent12.js151
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent13.html48
-rw-r--r--LayoutTests/dom/html/level2/events/dispatchEvent13.js209
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent01.html48
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent01.js121
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent02.html48
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent02.js121
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent03.html48
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent03.js130
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent04.html48
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent04.js123
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent05.html48
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent05.js123
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent06.html48
-rw-r--r--LayoutTests/dom/html/level2/events/initEvent06.js132
-rw-r--r--LayoutTests/dom/html/level2/events/resources/COPYRIGHT.html106
-rw-r--r--LayoutTests/dom/html/level2/events/selfhtml.js721
-rw-r--r--LayoutTests/dom/html/level2/html/AppletsCollection-expected.txt16
-rw-r--r--LayoutTests/dom/html/level2/html/AppletsCollection.html46
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement02.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement03.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement04.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement05.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement06.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement06.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement07.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement07.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement08.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement08.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement09.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement09.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement10.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement10.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement11.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement11.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement12.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement12.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement13.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement13.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement14.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAnchorElement14.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement02.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement03.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement04.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement05.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement06.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement06.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement07.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement07.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement08.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement08.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement09.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement09.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement10.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement10.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement11.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAppletElement11.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement01.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement02.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement03.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement04.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement05.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement06.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement06.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement07.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement07.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement08.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLAreaElement08.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBRElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBRElement01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBRElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseElement01.html824
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseElement02.html828
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement02.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement03.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBaseFontElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement01.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement02.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement03.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement04.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement05.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement06.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement06.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement07.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement07.js110
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement08.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement08.js109
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement09.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement09.js112
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement10.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement10.js111
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement11.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement11.js110
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement12.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLBodyElement12.js109
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement01.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement01.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement02.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement03.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement04.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement05.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement05.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement06.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement06.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement07.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement07.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement08.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLButtonElement08.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection01.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection01.js121
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection02.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection02.js121
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection03.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection03.js121
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection04.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection04.js133
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection05.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection05.js118
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection06.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection06.js122
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection07.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection07.js121
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection08.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection08.js121
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection09.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection09.js118
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection10.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection10.js123
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection11.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection11.js123
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection12.html79
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLCollection12.js121
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDirectoryElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDirectoryElement01.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDirectoryElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDivElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDivElement01.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDivElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDlistElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDlistElement01.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDlistElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument01.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument01.js109
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument02.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument02.js111
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument03.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument03.js111
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument04.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument04.js110
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument05.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument05.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument07.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument07.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument08.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument08.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument09.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument09.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument10.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument10.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument11.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument11.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument12.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument12.js109
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument13.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument13.js109
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument14.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument14.js110
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument15.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument15.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument16.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument16.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument17.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument17.js119
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument18.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument18.js102
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument19.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument19.js129
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument20.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument20.js129
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument21-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument21.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument21.js138
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument22-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument22.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument22.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument23-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument23.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument23.js106
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument24-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument24.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument24.js109
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument25-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument25.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument25.js108
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument26-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument26.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument26.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument27-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument27.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLDocument27.js106
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement01.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement02.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement03.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement04.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement05.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement06.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement06.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement07.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement07.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement08.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement08.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement09.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement09.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement10.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement10.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement100-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement100.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement100.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement101-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement101.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement101.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement102-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement102.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement102.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement103-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement103.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement103.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement104-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement104.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement104.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement105-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement105.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement105.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement106-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement106.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement106.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement107-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement107.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement107.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement108-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement108.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement108.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement109-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement109.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement109.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement11.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement11.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement110-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement110.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement110.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement111-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement111.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement111.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement112-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement112.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement112.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement113-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement113.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement113.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement114-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement114.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement114.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement115-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement115.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement115.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement116-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement116.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement116.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement117-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement117.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement117.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement118-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement118.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement118.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement119-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement119.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement119.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement12.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement12.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement120-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement120.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement120.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement121-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement121.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement121.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement122-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement122.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement122.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement123-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement123.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement123.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement124-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement124.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement124.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement125-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement125.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement125.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement126-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement126.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement126.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement127-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement127.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement127.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement128-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement128.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement128.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement129-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement129.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement129.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement13.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement13.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement130-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement130.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement130.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement131-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement131.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement131.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement132-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement132.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement132.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement133-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement133.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement133.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement134-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement134.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement134.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement135-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement135.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement135.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement136-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement136.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement136.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement137-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement137.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement137.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement138-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement138.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement138.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement139-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement139.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement139.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement14.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement14.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement140-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement140.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement140.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement141-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement141.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement141.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement142-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement142.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement142.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement143-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement143.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement143.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement144-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement144.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement144.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement145-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement145.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement145.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement15.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement15.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement16.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement16.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement17.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement17.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement18.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement18.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement19.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement19.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement20.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement20.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement21-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement21.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement21.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement22-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement22.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement22.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement23-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement23.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement23.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement24-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement24.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement24.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement25-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement25.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement25.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement26-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement26.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement26.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement27-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement27.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement27.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement28-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement28.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement28.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement29-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement29.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement29.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement30-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement30.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement30.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement31-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement31.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement31.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement32-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement32.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement32.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement33-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement33.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement33.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement34-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement34.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement34.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement35-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement35.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement35.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement36-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement36.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement36.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement37-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement37.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement37.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement38-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement38.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement38.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement39-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement39.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement39.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement40-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement40.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement40.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement41-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement41.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement41.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement42-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement42.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement42.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement43-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement43.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement43.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement44-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement44.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement44.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement45-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement45.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement45.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement46-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement46.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement46.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement47-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement47.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement47.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement48-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement48.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement48.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement49-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement49.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement49.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement50-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement50.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement50.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement51-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement51.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement51.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement52-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement52.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement52.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement53-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement53.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement53.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement54-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement54.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement54.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement55-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement55.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement55.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement56-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement56.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement56.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement57-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement57.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement57.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement58-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement58.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement58.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement59-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement59.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement59.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement60-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement60.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement60.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement61-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement61.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement61.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement62-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement62.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement62.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement63-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement63.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement63.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement64-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement64.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement64.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement65-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement65.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement65.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement66-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement66.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement66.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement67-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement67.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement67.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement68-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement68.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement68.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement69-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement69.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement69.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement70-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement70.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement70.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement71-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement71.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement71.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement72-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement72.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement72.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement73-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement73.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement73.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement74-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement74.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement74.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement75-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement75.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement75.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement76-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement76.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement76.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement77-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement77.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement77.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement78-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement78.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement78.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement79-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement79.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement79.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement80-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement80.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement80.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement81-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement81.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement81.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement82-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement82.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement82.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement83-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement83.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement83.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement84-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement84.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement84.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement85-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement85.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement85.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement86-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement86.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement86.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement87-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement87.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement87.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement88-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement88.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement88.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement89-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement89.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement89.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement90-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement90.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement90.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement91-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement91.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement91.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement92-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement92.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement92.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement93-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement93.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement93.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement94-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement94.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement94.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement95-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement95.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement95.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement96-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement96.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement96.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement97-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement97.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement97.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement98-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement98.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement98.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement99-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement99.html81
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLElement99.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFieldSetElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFieldSetElement01.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFieldSetElement01.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFieldSetElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFieldSetElement02.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFieldSetElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement01.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement02.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement03.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFontElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement01.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement01.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement02.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement03.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement04.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement05.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement06.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement06.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement07.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement07.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement08.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement08.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement09.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement09.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement10.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFormElement10.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement01.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement01.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement02.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement03.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement04.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement05.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement05.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement06.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement07.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement08.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement08.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement09.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameElement09.js119
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameSetElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameSetElement01.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameSetElement01.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameSetElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameSetElement02.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLFrameSetElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement01.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement02.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement03.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement04.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHRElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadElement01.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement01.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement02.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement03.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement04.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement05.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement06.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHeadingElement06.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHtmlElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHtmlElement01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLHtmlElement01.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement01.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement01.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement02.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement02.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement03.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement04.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement05.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement05.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement06.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement06.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement07.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement08.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement08.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement09.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement09.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement10.html10
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement10.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement11.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIFrameElement11.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement01.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement02.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement03.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement04.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement05.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement06.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement06.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement07.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement07.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement08.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement08.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement09.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement09.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement10.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement10.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement11.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement11.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement12.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLImageElement12.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement01.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement01.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement02.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement03.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement03.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement04.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement05.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement05.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement06.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement07.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement08.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement08.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement09.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement09.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement10.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement11.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement11.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement12.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement12.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement13.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement13.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement14.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement14.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement15.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement15.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement16.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement16.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement17.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement17.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement18.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement18.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement19.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement19.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement20.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement20.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement21-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement21.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement21.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement22-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement22.html60
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLInputElement22.js108
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement01.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement01.js122
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement02.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement02.js119
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement03.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLIsIndexElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLIElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLIElement01.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLIElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLIElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLIElement02.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLIElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement01.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement01.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement02.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement03.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement04.html21
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLabelElement04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement01.html22
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement01.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement02.html22
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement03.html22
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement04.html22
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLegendElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement01.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement02.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement03.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement04.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement05.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement06.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement06.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement07.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement07.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement08.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement08.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement09.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLLinkElement09.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMapElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMapElement01.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMapElement01.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMapElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMapElement02.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMapElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMenuElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMenuElement01.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMenuElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement01.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement02.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement03.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement04.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLMetaElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement01.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement02.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement03.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement04.html15
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLModElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement01.html32
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement02.html32
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement03.html32
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOListElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement01.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement01.js116
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement02.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement03.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement03.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement04.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement05.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement05.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement06.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement07.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement08.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement08.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement09.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement09.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement10.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement11.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement11.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement12.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement12.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement13.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement13.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement14.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement14.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement15.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement15.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement16.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement16.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement17.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement17.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement18.html18
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement18.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement19.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement19.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement20.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLObjectElement20.js112
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptGroupElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptGroupElement01.html25
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptGroupElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptGroupElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptGroupElement02.html25
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptGroupElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement01.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement01.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement02.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement03.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement03.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement04.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement05.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement05.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement06.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement07.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement08.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement08.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement09.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionElement09.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection01.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection01.js119
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection02.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection02.js128
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection03.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection03.js127
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection04.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection04.js127
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection05.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection05.js127
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection06.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection06.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection07.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLOptionsCollection07.js128
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParagraphElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParagraphElement01.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParagraphElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement01.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement02.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement03.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement04.html14
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLParamElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLPreElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLPreElement01.html17
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLPreElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLQuoteElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLQuoteElement01.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLQuoteElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLQuoteElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLQuoteElement02.html16
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLQuoteElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement01.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement02.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement03.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement04.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement04.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement05.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement05.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement06.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement06.js109
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement07.html11
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLScriptElement07.js109
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement01.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement01.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement02.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement03.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement03.js118
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement04.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement05.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement05.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement06.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement06.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement07.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement08.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement08.js134
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement09.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement09.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement10.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement11.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement11.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement12.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement12.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement13.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement13.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement14.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement14.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement15.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement15.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement16.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement16.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement17.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement17.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement18.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement18.js133
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement19.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement19.js137
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement20.html44
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLSelectElement20.js133
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement02.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement03.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLStyleElement03.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01.html25
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement01.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement02.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement02.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement03.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement03.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement04.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement04.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement05.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement05.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement06.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement07.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement08.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement08.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement09.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement09.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement10.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement11.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement11.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement12.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement12.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement13.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement13.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement14.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement14.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement15.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement15.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement16.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement16.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement17.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement17.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement18.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement18.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement19.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement19.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement20.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement20.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement21-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement21.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement21.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement22-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement22.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement22.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement23-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement23.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement23.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement24-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement24.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement24.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement25-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement25.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement25.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement26-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement26.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement26.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement27-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement27.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement27.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement28-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement28.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement28.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement29-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement29.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement29.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement30-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement30.html23
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableCellElement30.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement01.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement01.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement02.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement03.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement03.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement04.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement05.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement05.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement06.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement06.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement07.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement08.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement08.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement09.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement09.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement10.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement11.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement11.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement12.html35
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableColElement12.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement01.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement01.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement02.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement03.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement03.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement04.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement05.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement05.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement06.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement07.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement07.js132
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement08.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement08.js129
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement09.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement09.js132
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement10.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement11.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement11.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement12.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement12.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement13.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement13.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement14.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement14.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement15.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement15.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement16.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement16.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement17.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement17.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement18.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement18.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement19.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement19.js123
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement20.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement20.js122
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement21-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement21.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement21.js139
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement22-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement22.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement22.js123
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement23-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement23.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement23.js122
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement24-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement24.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement24.js139
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement25-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement25.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement25.js121
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement26-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement26.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement26.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement27-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement27.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement27.js119
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement28-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement28.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement28.js133
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement29-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement29.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement29.js137
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement30-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement30.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement30.js144
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement31-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement31.html12
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement31.js138
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement32-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement32.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement32.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement33-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement33.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement33.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement34-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement34.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement34.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement35-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement35.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement35.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement36-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement36.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement36.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement37-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement37.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement37.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement38-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement38.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement38.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement39-expected.txt3
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement39.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement39.js139
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement40-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement40.html78
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableElement40.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement01.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement01.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement02.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement03.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement03.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement04.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement05.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement05.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement06.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement07.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement07.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement08.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement08.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement09.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement09.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement10.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement11.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement11.js144
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement12.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement12.js143
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement13.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement13.js144
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement14.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement14.js144
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement15.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement15.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement16.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement16.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement17.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement17.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement18.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement18.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement19.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement19.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement20.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement20.js146
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement21-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement21.html59
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableRowElement21.js146
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement01.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement01.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement02.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement03.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement03.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement04.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement05.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement05.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement06.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement07.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement07.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement08.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement08.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement09.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement09.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement10.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement11.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement11.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement12.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement12.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement13.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement13.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement14.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement14.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement15.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement15.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement16-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement16.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement16.js126
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement17.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement17.js126
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement18.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement18.js126
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement19.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement19.js127
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement20.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement20.js127
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement21-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement21.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement21.js128
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement22-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement22.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement22.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement23-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement23.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement23.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement24-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement24.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement24.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement25-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement25.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement25.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement26-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement26.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement26.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement27-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement27.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement27.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement28-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement28.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement28.js125
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement29-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement29.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement29.js124
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement30-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement30.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement30.js130
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement31-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement31.html62
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTableSectionElement31.js128
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement01.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement01.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement02.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement02.js117
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement03.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement03.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement04.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement05.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement05.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement06.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement07.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement07.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement08.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement08.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement09.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement09.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement10.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement11.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement11.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement12.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement12.js115
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement13.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement13.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement14.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement14.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement15.html26
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTextAreaElement15.js107
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTitleElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTitleElement01.html13
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLTitleElement01.js113
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLUListElement01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLUListElement01.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLUListElement01.js114
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLUListElement02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLUListElement02.html36
-rw-r--r--LayoutTests/dom/html/level2/html/HTMLUListElement02.js113
-rw-r--r--LayoutTests/dom/html/level2/html/anchor01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/anchor01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/anchor01.js112
-rw-r--r--LayoutTests/dom/html/level2/html/anchor02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/anchor02.html12
-rw-r--r--LayoutTests/dom/html/level2/html/anchor02.js112
-rw-r--r--LayoutTests/dom/html/level2/html/anchor03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/anchor03.html12
-rw-r--r--LayoutTests/dom/html/level2/html/anchor03.js112
-rw-r--r--LayoutTests/dom/html/level2/html/anchor04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/anchor04.html12
-rw-r--r--LayoutTests/dom/html/level2/html/anchor04.js112
-rw-r--r--LayoutTests/dom/html/level2/html/anchor05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/anchor05.html12
-rw-r--r--LayoutTests/dom/html/level2/html/anchor05.js112
-rw-r--r--LayoutTests/dom/html/level2/html/anchor06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/anchor06.html12
-rw-r--r--LayoutTests/dom/html/level2/html/anchor06.js112
-rw-r--r--LayoutTests/dom/html/level2/html/applets/DOMTSApplet.datbin0 -> 956 bytes
-rw-r--r--LayoutTests/dom/html/level2/html/applets/org/w3c/domts/DOMTSApplet.classbin0 -> 1584 bytes
-rw-r--r--LayoutTests/dom/html/level2/html/area01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/area01.html14
-rw-r--r--LayoutTests/dom/html/level2/html/area01.js111
-rw-r--r--LayoutTests/dom/html/level2/html/area02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/area02.html14
-rw-r--r--LayoutTests/dom/html/level2/html/area02.js111
-rw-r--r--LayoutTests/dom/html/level2/html/area03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/area03.html14
-rw-r--r--LayoutTests/dom/html/level2/html/area03.js111
-rw-r--r--LayoutTests/dom/html/level2/html/area04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/area04.html14
-rw-r--r--LayoutTests/dom/html/level2/html/area04.js111
-rw-r--r--LayoutTests/dom/html/level2/html/basefont01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/basefont01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/basefont01.js111
-rw-r--r--LayoutTests/dom/html/level2/html/body01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/body01.html10
-rw-r--r--LayoutTests/dom/html/level2/html/body01.js112
-rw-r--r--LayoutTests/dom/html/level2/html/button01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button01.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button01.js111
-rw-r--r--LayoutTests/dom/html/level2/html/button02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button02.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/button03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button03.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button03.js115
-rw-r--r--LayoutTests/dom/html/level2/html/button04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button04.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/button05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button05.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button05.js112
-rw-r--r--LayoutTests/dom/html/level2/html/button06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button06.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button06.js112
-rw-r--r--LayoutTests/dom/html/level2/html/button07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button07.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button07.js112
-rw-r--r--LayoutTests/dom/html/level2/html/button08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button08.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button08.js112
-rw-r--r--LayoutTests/dom/html/level2/html/button09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/button09.html21
-rw-r--r--LayoutTests/dom/html/level2/html/button09.js112
-rw-r--r--LayoutTests/dom/html/level2/html/dlist01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/dlist01.html15
-rw-r--r--LayoutTests/dom/html/level2/html/dlist01.js111
-rw-r--r--LayoutTests/dom/html/level2/html/doc01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/doc01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/doc01.js106
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature01.html25
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature01.js96
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature02.html25
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature02.js95
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature03.html25
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature03.js98
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature04.html25
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature04.js97
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature05.html25
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature05.js96
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature06.html25
-rw-r--r--LayoutTests/dom/html/level2/html/hasFeature06.js95
-rw-r--r--LayoutTests/dom/html/level2/html/object01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object01.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object01.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object02.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object02.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object03.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object03.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object04.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object04.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object05-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object05.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object05.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object06.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object07.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object07.js111
-rw-r--r--LayoutTests/dom/html/level2/html/object08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object08.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object08.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object09.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object09.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object10.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object10.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object11-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object11.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object11.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object12.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object12.js111
-rw-r--r--LayoutTests/dom/html/level2/html/object13-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object13.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object13.js112
-rw-r--r--LayoutTests/dom/html/level2/html/object14-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object14.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object14.js111
-rw-r--r--LayoutTests/dom/html/level2/html/object15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/object15.html18
-rw-r--r--LayoutTests/dom/html/level2/html/object15.js112
-rw-r--r--LayoutTests/dom/html/level2/html/resources/COPYRIGHT.html106
-rw-r--r--LayoutTests/dom/html/level2/html/resources/frame.html14
-rw-r--r--LayoutTests/dom/html/level2/html/resources/iframe.html10
-rw-r--r--LayoutTests/dom/html/level2/html/right.pngbin0 -> 144 bytes
-rw-r--r--LayoutTests/dom/html/level2/html/table01-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table01.html12
-rw-r--r--LayoutTests/dom/html/level2/html/table01.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table02-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table02.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table02.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table03-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table03.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table03.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table04-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table04.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table04.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table06-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table06.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table06.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table07-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table07.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table07.js118
-rw-r--r--LayoutTests/dom/html/level2/html/table08-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table08.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table08.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table09-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table09.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table09.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table10-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table10.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table10.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table12-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table12.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table12.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table15-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table15.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table15.js118
-rw-r--r--LayoutTests/dom/html/level2/html/table17-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table17.html62
-rw-r--r--LayoutTests/dom/html/level2/html/table17.js115
-rw-r--r--LayoutTests/dom/html/level2/html/table18-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table18.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table18.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table19-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table19.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table19.js113
-rw-r--r--LayoutTests/dom/html/level2/html/table20-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table20.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table20.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table21-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table21.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table21.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table22-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table22.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table22.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table23-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table23.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table23.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table24-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table24.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table24.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table25-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table25.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table25.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table26-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table26.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table26.js111
-rw-r--r--LayoutTests/dom/html/level2/html/table27-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table27.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table27.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table28-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table28.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table28.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table29-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table29.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table29.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table30-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table30.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table30.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table31-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table31.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table31.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table32-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table32.html23
-rw-r--r--LayoutTests/dom/html/level2/html/table32.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table33-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table33.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table33.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table34-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table34.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table34.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table35-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table35.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table35.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table36-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table36.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table36.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table37-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table37.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table37.js111
-rw-r--r--LayoutTests/dom/html/level2/html/table38-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table38.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table38.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table39-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table39.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table39.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table40-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table40.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table40.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table41-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table41.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table41.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table42-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table42.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table42.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table43-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table43.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table43.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table44-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table44.html78
-rw-r--r--LayoutTests/dom/html/level2/html/table44.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table45-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table45.html59
-rw-r--r--LayoutTests/dom/html/level2/html/table45.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table46-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table46.html59
-rw-r--r--LayoutTests/dom/html/level2/html/table46.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table47-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table47.html59
-rw-r--r--LayoutTests/dom/html/level2/html/table47.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table48-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table48.html35
-rw-r--r--LayoutTests/dom/html/level2/html/table48.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table49-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table49.html35
-rw-r--r--LayoutTests/dom/html/level2/html/table49.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table50-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table50.html35
-rw-r--r--LayoutTests/dom/html/level2/html/table50.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table51-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table51.html35
-rw-r--r--LayoutTests/dom/html/level2/html/table51.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table52-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table52.html35
-rw-r--r--LayoutTests/dom/html/level2/html/table52.js112
-rw-r--r--LayoutTests/dom/html/level2/html/table53-expected.txt2
-rw-r--r--LayoutTests/dom/html/level2/html/table53.html35
-rw-r--r--LayoutTests/dom/html/level2/html/table53.js112
-rw-r--r--LayoutTests/dom/html/level2/html/w3c_main.pngbin0 -> 10292 bytes
2893 files changed, 163628 insertions, 0 deletions
diff --git a/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd-expected.txt b/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd-expected.txt
new file mode 100644
index 0000000..85b8f6e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentgetdoctypenodtd
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd.html b/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd.html
new file mode 100644
index 0000000..7edd35c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd.html
@@ -0,0 +1,10 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_nodtdstaff</title><script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='documentgetdoctypenodtd.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd.js b/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd.js
new file mode 100644
index 0000000..7d475f9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentgetdoctypenodtd.js
@@ -0,0 +1,110 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentgetdoctypenodtd";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("validating", false);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_nodtdstaff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getDoctype()" method returns null for XML documents
+ without a document type declaration.
+ Retrieve the XML document without a DTD and invoke the
+ "getDoctype()" method. It should return null.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31
+*/
+function documentgetdoctypenodtd() {
+ var success;
+ if(checkInitialization(builder, "documentgetdoctypenodtd") != null) return;
+ var doc;
+ var docType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_nodtdstaff");
+ docType = doc.doctype;
+
+ assertNull("documentGetDocTypeNoDTDAssert",docType);
+
+}
+
+
+
+
+function runTest() {
+ documentgetdoctypenodtd();
+}
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref-expected.txt b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref-expected.txt
new file mode 100644
index 0000000..12a8e46
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentinvalidcharacterexceptioncreateentref
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref.html b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref.html
new file mode 100644
index 0000000..3b59ac3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="documentinvalidcharacterexceptioncreateentref.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref.js b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref.js
new file mode 100644
index 0000000..ce7e127
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref.js
@@ -0,0 +1,143 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentinvalidcharacterexceptioncreateentref";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "createEntityReference(tagName)" method raises an
+ INVALID_CHARACTER_ERR DOMException if the specified
+ tagName contains an invalid character.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-392B75AE
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-392B75AE')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function documentinvalidcharacterexceptioncreateentref() {
+ var success;
+ if(checkInitialization(builder, "documentinvalidcharacterexceptioncreateentref") != null) return;
+ var doc;
+ var badEntityRef;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ badEntityRef = doc.createEntityReference("foo");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+
+ {
+ success = false;
+ try {
+ badEntityRef = doc.createEntityReference("invalid^Name");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ documentinvalidcharacterexceptioncreateentref();
+}
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1-expected.txt b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1-expected.txt
new file mode 100644
index 0000000..49aebe4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentinvalidcharacterexceptioncreateentref1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1.html b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1.html
new file mode 100644
index 0000000..3b6d09c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="documentinvalidcharacterexceptioncreateentref1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1.js b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1.js
new file mode 100644
index 0000000..b4d1ec9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreateentref1.js
@@ -0,0 +1,140 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentinvalidcharacterexceptioncreateentref1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Creating an entity reference with an empty name should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-392B75AE
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-392B75AE')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function documentinvalidcharacterexceptioncreateentref1() {
+ var success;
+ if(checkInitialization(builder, "documentinvalidcharacterexceptioncreateentref1") != null) return;
+ var doc;
+ var badEntityRef;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ badEntityRef = doc.createEntityReference("foo");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+
+ {
+ success = false;
+ try {
+ badEntityRef = doc.createEntityReference("");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ documentinvalidcharacterexceptioncreateentref1();
+}
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi-expected.txt b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi-expected.txt
new file mode 100644
index 0000000..b8a92eb
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentinvalidcharacterexceptioncreatepi
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi.html b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi.html
new file mode 100644
index 0000000..198c25c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="documentinvalidcharacterexceptioncreatepi.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi.js b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi.js
new file mode 100644
index 0000000..3216c53
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi.js
@@ -0,0 +1,143 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentinvalidcharacterexceptioncreatepi";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "createProcessingInstruction(target,data) method
+ raises an INVALID_CHARACTER_ERR DOMException if the
+ specified tagName contains an invalid character.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-135944439
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-135944439')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function documentinvalidcharacterexceptioncreatepi() {
+ var success;
+ if(checkInitialization(builder, "documentinvalidcharacterexceptioncreatepi") != null) return;
+ var doc;
+ var badPI;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ badPI = doc.createProcessingInstruction("foo","data");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+
+ {
+ success = false;
+ try {
+ badPI = doc.createProcessingInstruction("invalid^Name","data");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ documentinvalidcharacterexceptioncreatepi();
+}
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1-expected.txt b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1-expected.txt
new file mode 100644
index 0000000..d23ea1c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentinvalidcharacterexceptioncreatepi1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1.html b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1.html
new file mode 100644
index 0000000..7b0f65d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="documentinvalidcharacterexceptioncreatepi1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1.js b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1.js
new file mode 100644
index 0000000..fb6104d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/documentinvalidcharacterexceptioncreatepi1.js
@@ -0,0 +1,140 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/documentinvalidcharacterexceptioncreatepi1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Creating a processing instruction with an empty target should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-135944439
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-135944439')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function documentinvalidcharacterexceptioncreatepi1() {
+ var success;
+ if(checkInitialization(builder, "documentinvalidcharacterexceptioncreatepi1") != null) return;
+ var doc;
+ var badPI;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ badPI = doc.createProcessingInstruction("foo","data");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+
+ {
+ success = false;
+ try {
+ badPI = doc.createProcessingInstruction("","data");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ documentinvalidcharacterexceptioncreatepi1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild1-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrappendchild1-expected.txt
new file mode 100644
index 0000000..dfd0980
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild1.html b/LayoutTests/dom/html/level1/core/hc_attrappendchild1.html
new file mode 100644
index 0000000..6c221ac
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrappendchild1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild1.js b/LayoutTests/dom/html/level1/core/hc_attrappendchild1.js
new file mode 100644
index 0000000..0bb0ad9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild1.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Appends a text node to an attribute and checks if the value of
+the attribute is changed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+*/
+function hc_attrappendchild1() {
+ var success;
+ if(checkInitialization(builder, "hc_attrappendchild1") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var lastChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = doc.createTextNode("terday");
+ retval = titleAttr.appendChild(textNode);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","Yesterday",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","Yesterday",value);
+ value = retval.nodeValue;
+
+ assertEquals("retvalValue","terday",value);
+ lastChild = titleAttr.lastChild;
+
+ value = lastChild.nodeValue;
+
+ assertEquals("lastChildValue","terday",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrappendchild1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild2-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrappendchild2-expected.txt
new file mode 100644
index 0000000..a735fa0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild2.html b/LayoutTests/dom/html/level1/core/hc_attrappendchild2.html
new file mode 100644
index 0000000..d074183
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrappendchild2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild2.js b/LayoutTests/dom/html/level1/core/hc_attrappendchild2.js
new file mode 100644
index 0000000..ac53896
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild2.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Attempts to append an element to the child nodes of an attribute.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+*/
+function hc_attrappendchild2() {
+ var success;
+ if(checkInitialization(builder, "hc_attrappendchild2") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var newChild;
+ var retval;
+ var lastChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ newChild = doc.createElement("terday");
+
+ {
+ success = false;
+ try {
+ retval = titleAttr.appendChild(newChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_attrappendchild2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild3-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrappendchild3-expected.txt
new file mode 100644
index 0000000..514c75c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild3-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild3
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild3.html b/LayoutTests/dom/html/level1/core/hc_attrappendchild3.html
new file mode 100644
index 0000000..2eb0236
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild3.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrappendchild3.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild3.js b/LayoutTests/dom/html/level1/core/hc_attrappendchild3.js
new file mode 100644
index 0000000..66adc3d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild3.js
@@ -0,0 +1,138 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild3";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Appends a document fragment to an attribute and checks if the value of
+the attribute is changed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+*/
+function hc_attrappendchild3() {
+ var success;
+ if(checkInitialization(builder, "hc_attrappendchild3") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var terNode;
+ var dayNode;
+ var retval;
+ var lastChild;
+ var docFrag;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ terNode = doc.createTextNode("ter");
+ dayNode = doc.createTextNode("day");
+ docFrag = doc.createDocumentFragment();
+ retval = docFrag.appendChild(terNode);
+ retval = docFrag.appendChild(dayNode);
+ retval = titleAttr.appendChild(docFrag);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","Yesterday",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","Yesterday",value);
+ value = retval.nodeValue;
+
+ assertNull("retvalValue",value);
+ lastChild = titleAttr.lastChild;
+
+ value = lastChild.nodeValue;
+
+ assertEquals("lastChildValue","day",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrappendchild3();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild4-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrappendchild4-expected.txt
new file mode 100644
index 0000000..629c052
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild4-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild4
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild4.html b/LayoutTests/dom/html/level1/core/hc_attrappendchild4.html
new file mode 100644
index 0000000..c6c437b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild4.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrappendchild4.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild4.js b/LayoutTests/dom/html/level1/core/hc_attrappendchild4.js
new file mode 100644
index 0000000..dc70102
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild4.js
@@ -0,0 +1,152 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild4";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Attempt to append a CDATASection to an attribute which should result
+in a HIERARCHY_REQUEST_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+*/
+function hc_attrappendchild4() {
+ var success;
+ if(checkInitialization(builder, "hc_attrappendchild4") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var lastChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ textNode = doc.createCDATASection("terday");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+ textNode = doc.createCDATASection("terday");
+
+ {
+ success = false;
+ try {
+ retval = titleAttr.appendChild(textNode);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_attrappendchild4();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild5-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrappendchild5-expected.txt
new file mode 100644
index 0000000..ce4a75c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild5-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild5
+Status: failure
+Detail: throw_WRONG_DOCUMENT_ERR: assertTrue failed
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild5.html b/LayoutTests/dom/html/level1/core/hc_attrappendchild5.html
new file mode 100644
index 0000000..237342f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild5.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrappendchild5.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild5.js b/LayoutTests/dom/html/level1/core/hc_attrappendchild5.js
new file mode 100644
index 0000000..c9e8855
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild5.js
@@ -0,0 +1,141 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild5";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ var otherDocRef = null;
+ if (typeof(this.otherDoc) != 'undefined') {
+ otherDocRef = this.otherDoc;
+ }
+ docsLoaded += preload(otherDocRef, "otherDoc", "hc_staff");
+
+ if (docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Attempt to append a node from another document to an attribute which should result
+in a WRONG_DOCUMENT_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+*/
+function hc_attrappendchild5() {
+ var success;
+ if(checkInitialization(builder, "hc_attrappendchild5") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var lastChild;
+ var otherDoc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ var otherDocRef = null;
+ if (typeof(this.otherDoc) != 'undefined') {
+ otherDocRef = this.otherDoc;
+ }
+ otherDoc = load(otherDocRef, "otherDoc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = otherDoc.createTextNode("terday");
+
+ {
+ success = false;
+ try {
+ retval = titleAttr.appendChild(textNode);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 4);
+ }
+ assertTrue("throw_WRONG_DOCUMENT_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_attrappendchild5();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild6-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrappendchild6-expected.txt
new file mode 100644
index 0000000..83e105c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild6-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild6
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild6.html b/LayoutTests/dom/html/level1/core/hc_attrappendchild6.html
new file mode 100644
index 0000000..350a45a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild6.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrappendchild6.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrappendchild6.js b/LayoutTests/dom/html/level1/core/hc_attrappendchild6.js
new file mode 100644
index 0000000..01b3d80
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrappendchild6.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrappendchild6";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Creates an new attribute node and appends a text node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+*/
+function hc_attrappendchild6() {
+ var success;
+ if(checkInitialization(builder, "hc_attrappendchild6") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var lastChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ titleAttr = doc.createAttribute("title");
+ textNode = doc.createTextNode("Yesterday");
+ retval = titleAttr.appendChild(textNode);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","Yesterday",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","Yesterday",value);
+ value = retval.nodeValue;
+
+ assertEquals("retvalValue","Yesterday",value);
+ lastChild = titleAttr.lastChild;
+
+ value = lastChild.nodeValue;
+
+ assertEquals("lastChildValue","Yesterday",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrappendchild6();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrchildnodes1-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrchildnodes1-expected.txt
new file mode 100644
index 0000000..6e7bdc3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrchildnodes1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrchildnodes1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrchildnodes1.html b/LayoutTests/dom/html/level1/core/hc_attrchildnodes1.html
new file mode 100644
index 0000000..d3b0b8e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrchildnodes1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrchildnodes1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrchildnodes1.js b/LayoutTests/dom/html/level1/core/hc_attrchildnodes1.js
new file mode 100644
index 0000000..ac088f4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrchildnodes1.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrchildnodes1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.childNodes for an attribute node contains
+the expected text node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987
+*/
+function hc_attrchildnodes1() {
+ var success;
+ if(checkInitialization(builder, "hc_attrchildnodes1") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var childNodes;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ childNodes = titleAttr.childNodes;
+
+ assertSize("childNodesSize",1,childNodes);
+textNode = childNodes.item(0);
+ value = textNode.nodeValue;
+
+ assertEquals("child1IsYes","Yes",value);
+ textNode = childNodes.item(1);
+ assertNull("secondItemIsNull",textNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrchildnodes1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrchildnodes2-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrchildnodes2-expected.txt
new file mode 100644
index 0000000..db98264
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrchildnodes2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrchildnodes2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrchildnodes2.html b/LayoutTests/dom/html/level1/core/hc_attrchildnodes2.html
new file mode 100644
index 0000000..9b00027
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrchildnodes2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrchildnodes2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrchildnodes2.js b/LayoutTests/dom/html/level1/core/hc_attrchildnodes2.js
new file mode 100644
index 0000000..c6c6cd5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrchildnodes2.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrchildnodes2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks Node.childNodes for an attribute with multiple child nodes.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987
+*/
+function hc_attrchildnodes2() {
+ var success;
+ if(checkInitialization(builder, "hc_attrchildnodes2") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var childNodes;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ childNodes = titleAttr.childNodes;
+
+ textNode = doc.createTextNode("terday");
+ retval = titleAttr.appendChild(textNode);
+ assertSize("childNodesSize",2,childNodes);
+textNode = childNodes.item(0);
+ value = textNode.nodeValue;
+
+ assertEquals("child1IsYes","Yes",value);
+ textNode = childNodes.item(1);
+ value = textNode.nodeValue;
+
+ assertEquals("child2IsTerday","terday",value);
+ textNode = childNodes.item(2);
+ assertNull("thirdItemIsNull",textNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrchildnodes2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrclonenode1-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrclonenode1-expected.txt
new file mode 100644
index 0000000..c385eac
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrclonenode1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrclonenode1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrclonenode1.html b/LayoutTests/dom/html/level1/core/hc_attrclonenode1.html
new file mode 100644
index 0000000..ce88477
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrclonenode1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrclonenode1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrclonenode1.js b/LayoutTests/dom/html/level1/core/hc_attrclonenode1.js
new file mode 100644
index 0000000..7667e85
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrclonenode1.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrclonenode1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Appends a text node to an attribute and clones the node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4
+*/
+function hc_attrclonenode1() {
+ var success;
+ if(checkInitialization(builder, "hc_attrclonenode1") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var lastChild;
+ var clonedTitle;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = doc.createTextNode("terday");
+ retval = titleAttr.appendChild(textNode);
+ clonedTitle = titleAttr.cloneNode(false);
+ textNode.nodeValue = "text_node_not_cloned";
+
+ value = clonedTitle.value;
+
+ assertEquals("attrValue","Yesterday",value);
+ value = clonedTitle.nodeValue;
+
+ assertEquals("attrNodeValue","Yesterday",value);
+ lastChild = clonedTitle.lastChild;
+
+ value = lastChild.nodeValue;
+
+ assertEquals("lastChildValue","terday",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrclonenode1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment-expected.txt
new file mode 100644
index 0000000..eb91cb9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrcreatedocumentfragment
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment.html b/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment.html
new file mode 100644
index 0000000..510aea7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrcreatedocumentfragment.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment.js b/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment.js
new file mode 100644
index 0000000..b35e00f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatedocumentfragment.js
@@ -0,0 +1,138 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrcreatedocumentfragment";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Create a new DocumentFragment and add a newly created Element node(with one attribute).
+ Once the element is added, its attribute should be available as an attribute associated
+ with an Element within a DocumentFragment.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-35CB04B5
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=184
+*/
+function hc_attrcreatedocumentfragment() {
+ var success;
+ if(checkInitialization(builder, "hc_attrcreatedocumentfragment") != null) return;
+ var doc;
+ var docFragment;
+ var newOne;
+ var domesticNode;
+ var attributes;
+ var attribute;
+ var attrName;
+ var appendedChild;
+ var langAttrCount = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docFragment = doc.createDocumentFragment();
+ newOne = doc.createElement("html");
+ newOne.setAttribute("lang","EN");
+ appendedChild = docFragment.appendChild(newOne);
+ domesticNode = docFragment.firstChild;
+
+ attributes = domesticNode.attributes;
+
+ for(var indexN10078 = 0;indexN10078 < attributes.length; indexN10078++) {
+ attribute = attributes.item(indexN10078);
+ attrName = attribute.nodeName;
+
+
+ if(
+ equalsAutoCase("attribute", "lang", attrName)
+ ) {
+ langAttrCount += 1;
+
+ }
+
+ }
+ assertEquals("hasLangAttr",1,langAttrCount);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrcreatedocumentfragment();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode-expected.txt
new file mode 100644
index 0000000..e9fc2af
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrcreatetextnode
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode.html b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode.html
new file mode 100644
index 0000000..227e0a0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrcreatetextnode.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode.js b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode.js
new file mode 100644
index 0000000..0298426
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrcreatetextnode";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setValue()" method for an attribute creates a
+ Text node with the unparsed content of the string.
+ Retrieve the attribute named "class" from the last
+ child of of the fourth employee and assign the "Y&ent1;"
+ string to its value attribute. This value is not yet
+ parsed and therefore should still be the same upon
+ retrieval. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2002Apr/0057.html
+*/
+function hc_attrcreatetextnode() {
+ var success;
+ if(checkInitialization(builder, "hc_attrcreatetextnode") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var streetAttr;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(3);
+ attributes = testNode.attributes;
+
+ streetAttr = attributes.getNamedItem("class");
+ streetAttr.value = "Y&ent1;";
+
+ value = streetAttr.value;
+
+ assertEquals("value","Y&ent1;",value);
+ value = streetAttr.nodeValue;
+
+ assertEquals("nodeValue","Y&ent1;",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrcreatetextnode();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2-expected.txt
new file mode 100644
index 0000000..4350fb8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrcreatetextnode2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2.html b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2.html
new file mode 100644
index 0000000..a9eb542
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrcreatetextnode2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2.js b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2.js
new file mode 100644
index 0000000..bfa0d05
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrcreatetextnode2.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrcreatetextnode2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setNodeValue()" method for an attribute creates a
+ Text node with the unparsed content of the string.
+ Retrieve the attribute named "class" from the last
+ child of of the fourth employee and assign the "Y&ent1;"
+ string to its value attribute. This value is not yet
+ parsed and therefore should still be the same upon
+ retrieval. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2002Apr/0057.html
+*/
+function hc_attrcreatetextnode2() {
+ var success;
+ if(checkInitialization(builder, "hc_attrcreatetextnode2") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var streetAttr;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(3);
+ attributes = testNode.attributes;
+
+ streetAttr = attributes.getNamedItem("class");
+ streetAttr.nodeValue = "Y&ent1;";
+
+ value = streetAttr.value;
+
+ assertEquals("value","Y&ent1;",value);
+ value = streetAttr.nodeValue;
+
+ assertEquals("nodeValue","Y&ent1;",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrcreatetextnode2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attreffectivevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_attreffectivevalue-expected.txt
new file mode 100644
index 0000000..c6e6ad0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attreffectivevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attreffectivevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attreffectivevalue.html b/LayoutTests/dom/html/level1/core/hc_attreffectivevalue.html
new file mode 100644
index 0000000..8a9bc35
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attreffectivevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attreffectivevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attreffectivevalue.js b/LayoutTests/dom/html/level1/core/hc_attreffectivevalue.js
new file mode 100644
index 0000000..89a41c0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attreffectivevalue.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attreffectivevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If an Attr is explicitly assigned any value, then that value is the attributes effective value.
+ Retrieve the attribute named "domestic" from the last child of of the first employee
+ and examine its nodeValue attribute. This test uses the "getNamedItem(name)" method
+ from the NamedNodeMap interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549
+*/
+function hc_attreffectivevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_attreffectivevalue") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var domesticAttr;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(0);
+ attributes = testNode.attributes;
+
+ domesticAttr = attributes.getNamedItem("title");
+ value = domesticAttr.nodeValue;
+
+ assertEquals("attrEffectiveValueAssert","Yes",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attreffectivevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrfirstchild-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrfirstchild-expected.txt
new file mode 100644
index 0000000..a08ebfe
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrfirstchild-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrfirstchild
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrfirstchild.html b/LayoutTests/dom/html/level1/core/hc_attrfirstchild.html
new file mode 100644
index 0000000..834b534
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrfirstchild.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrfirstchild.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrfirstchild.js b/LayoutTests/dom/html/level1/core/hc_attrfirstchild.js
new file mode 100644
index 0000000..68f8b52
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrfirstchild.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrfirstchild";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.firstChild for an attribute node contains
+the expected text node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-169727388
+*/
+function hc_attrfirstchild() {
+ var success;
+ if(checkInitialization(builder, "hc_attrfirstchild") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var otherChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = titleAttr.firstChild;
+
+ assertNotNull("textNodeNotNull",textNode);
+value = textNode.nodeValue;
+
+ assertEquals("child1IsYes","Yes",value);
+ otherChild = textNode.nextSibling;
+
+ assertNull("nextSiblingIsNull",otherChild);
+ otherChild = textNode.previousSibling;
+
+ assertNull("previousSiblingIsNull",otherChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrfirstchild();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrgetvalue1-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrgetvalue1-expected.txt
new file mode 100644
index 0000000..e10e715
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrgetvalue1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrgetvalue1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrgetvalue1.html b/LayoutTests/dom/html/level1/core/hc_attrgetvalue1.html
new file mode 100644
index 0000000..451f8ee
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrgetvalue1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrgetvalue1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrgetvalue1.js b/LayoutTests/dom/html/level1/core/hc_attrgetvalue1.js
new file mode 100644
index 0000000..9ee328c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrgetvalue1.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrgetvalue1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks the value of an attribute that contains entity references.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474
+*/
+function hc_attrgetvalue1() {
+ var success;
+ if(checkInitialization(builder, "hc_attrgetvalue1") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var lastChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("class");
+ value = titleAttr.value;
+
+ assertEquals("attrValue1","Yα",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrgetvalue1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrgetvalue2-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrgetvalue2-expected.txt
new file mode 100644
index 0000000..c1082cb
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrgetvalue2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrgetvalue2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrgetvalue2.html b/LayoutTests/dom/html/level1/core/hc_attrgetvalue2.html
new file mode 100644
index 0000000..4bb7bb8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrgetvalue2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrgetvalue2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrgetvalue2.js b/LayoutTests/dom/html/level1/core/hc_attrgetvalue2.js
new file mode 100644
index 0000000..94cc2ae
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrgetvalue2.js
@@ -0,0 +1,146 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrgetvalue2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks the value of an attribute that contains entity references.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474
+*/
+function hc_attrgetvalue2() {
+ var success;
+ if(checkInitialization(builder, "hc_attrgetvalue2") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var firstChild;
+ var alphaRef;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("class");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ alphaRef = doc.createEntityReference("alpha");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+ alphaRef = doc.createEntityReference("alpha");
+ firstChild = titleAttr.firstChild;
+
+ retval = titleAttr.insertBefore(alphaRef,firstChild);
+ value = titleAttr.value;
+
+ assertEquals("attrValue1","αYα",value);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_attrgetvalue2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes-expected.txt
new file mode 100644
index 0000000..fefcead
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrhaschildnodes
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes.html b/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes.html
new file mode 100644
index 0000000..db784cf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrhaschildnodes.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes.js b/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes.js
new file mode 100644
index 0000000..71487c3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrhaschildnodes.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrhaschildnodes";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.hasChildNodes() is true for an attribute with content.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-810594187
+*/
+function hc_attrhaschildnodes() {
+ var success;
+ if(checkInitialization(builder, "hc_attrhaschildnodes") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var hasChildNodes;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ hasChildNodes = titleAttr.hasChildNodes();
+ assertTrue("hasChildrenIsTrue",hasChildNodes);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrhaschildnodes();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1-expected.txt
new file mode 100644
index 0000000..631492a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1.html b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1.html
new file mode 100644
index 0000000..99d7ae9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrinsertbefore1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1.js b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1.js
new file mode 100644
index 0000000..89aa99e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore1.js
@@ -0,0 +1,140 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Appends a text node to an attribute and checks if the value of
+the attribute is changed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+*/
+function hc_attrinsertbefore1() {
+ var success;
+ if(checkInitialization(builder, "hc_attrinsertbefore1") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var firstChild;
+ var lastChild;
+ var refChild = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = doc.createTextNode("terday");
+ retval = titleAttr.insertBefore(textNode,refChild);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","Yesterday",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","Yesterday",value);
+ value = retval.nodeValue;
+
+ assertEquals("retvalValue","terday",value);
+ firstChild = titleAttr.firstChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","Yes",value);
+ lastChild = titleAttr.lastChild;
+
+ value = lastChild.nodeValue;
+
+ assertEquals("lastChildValue","terday",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrinsertbefore1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2-expected.txt
new file mode 100644
index 0000000..b2f67e1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2.html b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2.html
new file mode 100644
index 0000000..77fff79
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrinsertbefore2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2.js b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2.js
new file mode 100644
index 0000000..cc4f50e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore2.js
@@ -0,0 +1,141 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Prepends a text node to an attribute and checks if the value of
+the attribute is changed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+*/
+function hc_attrinsertbefore2() {
+ var success;
+ if(checkInitialization(builder, "hc_attrinsertbefore2") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var lastChild;
+ var firstChild;
+ var refChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = doc.createTextNode("terday");
+ refChild = titleAttr.firstChild;
+
+ retval = titleAttr.insertBefore(textNode,refChild);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","terdayYes",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","terdayYes",value);
+ value = retval.nodeValue;
+
+ assertEquals("retvalValue","terday",value);
+ firstChild = titleAttr.firstChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","terday",value);
+ lastChild = titleAttr.lastChild;
+
+ value = lastChild.nodeValue;
+
+ assertEquals("lastChildValue","Yes",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrinsertbefore2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3-expected.txt
new file mode 100644
index 0000000..ccdb3e3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore3
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3.html b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3.html
new file mode 100644
index 0000000..9870d48
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrinsertbefore3.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3.js b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3.js
new file mode 100644
index 0000000..3cb24cd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore3.js
@@ -0,0 +1,146 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore3";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Appends a document fragment to an attribute and checks if the value of
+the attribute is changed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+*/
+function hc_attrinsertbefore3() {
+ var success;
+ if(checkInitialization(builder, "hc_attrinsertbefore3") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var terNode;
+ var dayNode;
+ var docFrag;
+ var retval;
+ var firstChild;
+ var lastChild;
+ var refChild = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ terNode = doc.createTextNode("ter");
+ dayNode = doc.createTextNode("day");
+ docFrag = doc.createDocumentFragment();
+ retval = docFrag.appendChild(terNode);
+ retval = docFrag.appendChild(dayNode);
+ retval = titleAttr.insertBefore(docFrag,refChild);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","Yesterday",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","Yesterday",value);
+ value = retval.nodeValue;
+
+ assertNull("retvalValue",value);
+ firstChild = titleAttr.firstChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","Yes",value);
+ lastChild = titleAttr.lastChild;
+
+ value = lastChild.nodeValue;
+
+ assertEquals("lastChildValue","day",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrinsertbefore3();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4-expected.txt
new file mode 100644
index 0000000..264d475
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore4
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4.html b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4.html
new file mode 100644
index 0000000..66a4ea8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrinsertbefore4.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4.js b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4.js
new file mode 100644
index 0000000..700e61d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore4.js
@@ -0,0 +1,147 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore4";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Prepends a document fragment to an attribute and checks if the value of
+the attribute is changed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+*/
+function hc_attrinsertbefore4() {
+ var success;
+ if(checkInitialization(builder, "hc_attrinsertbefore4") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var terNode;
+ var dayNode;
+ var docFrag;
+ var retval;
+ var firstChild;
+ var lastChild;
+ var refChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ terNode = doc.createTextNode("ter");
+ dayNode = doc.createTextNode("day");
+ docFrag = doc.createDocumentFragment();
+ retval = docFrag.appendChild(terNode);
+ retval = docFrag.appendChild(dayNode);
+ refChild = titleAttr.firstChild;
+
+ retval = titleAttr.insertBefore(docFrag,refChild);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","terdayYes",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","terdayYes",value);
+ value = retval.nodeValue;
+
+ assertNull("retvalValue",value);
+ firstChild = titleAttr.firstChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","ter",value);
+ lastChild = titleAttr.lastChild;
+
+ value = lastChild.nodeValue;
+
+ assertEquals("lastChildValue","Yes",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrinsertbefore4();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5-expected.txt
new file mode 100644
index 0000000..87b5b69
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore5
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5.html b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5.html
new file mode 100644
index 0000000..93a3e41
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrinsertbefore5.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5.js b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5.js
new file mode 100644
index 0000000..a9737ed
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore5.js
@@ -0,0 +1,153 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore5";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Attempt to append a CDATASection to an attribute which should result
+in a HIERARCHY_REQUEST_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+*/
+function hc_attrinsertbefore5() {
+ var success;
+ if(checkInitialization(builder, "hc_attrinsertbefore5") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var refChild = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ textNode = doc.createCDATASection("terday");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+ textNode = doc.createCDATASection("terday");
+
+ {
+ success = false;
+ try {
+ retval = titleAttr.insertBefore(textNode,refChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_attrinsertbefore5();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6-expected.txt
new file mode 100644
index 0000000..ee3fbfc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore6
+Status: failure
+Detail: throw_WRONG_DOCUMENT_ERR: assertTrue failed
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6.html b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6.html
new file mode 100644
index 0000000..e68639d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrinsertbefore6.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6.js b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6.js
new file mode 100644
index 0000000..dc04f62
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore6.js
@@ -0,0 +1,142 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore6";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ var otherDocRef = null;
+ if (typeof(this.otherDoc) != 'undefined') {
+ otherDocRef = this.otherDoc;
+ }
+ docsLoaded += preload(otherDocRef, "otherDoc", "hc_staff");
+
+ if (docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Attempt to append a text node from another document to an attribute which should result
+in a WRONG_DOCUMENT_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+*/
+function hc_attrinsertbefore6() {
+ var success;
+ if(checkInitialization(builder, "hc_attrinsertbefore6") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var refChild = null;
+
+ var otherDoc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ var otherDocRef = null;
+ if (typeof(this.otherDoc) != 'undefined') {
+ otherDocRef = this.otherDoc;
+ }
+ otherDoc = load(otherDocRef, "otherDoc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = otherDoc.createTextNode("terday");
+
+ {
+ success = false;
+ try {
+ retval = titleAttr.insertBefore(textNode,refChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 4);
+ }
+ assertTrue("throw_WRONG_DOCUMENT_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_attrinsertbefore6();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7-expected.txt
new file mode 100644
index 0000000..880ed5c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore7
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7.html b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7.html
new file mode 100644
index 0000000..5304a3f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrinsertbefore7.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7.js b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7.js
new file mode 100644
index 0000000..f014502
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrinsertbefore7.js
@@ -0,0 +1,160 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrinsertbefore7";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Appends a document fragment containing a CDATASection to an attribute.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+*/
+function hc_attrinsertbefore7() {
+ var success;
+ if(checkInitialization(builder, "hc_attrinsertbefore7") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var terNode;
+ var dayNode;
+ var docFrag;
+ var retval;
+ var firstChild;
+ var lastChild;
+ var refChild = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ terNode = doc.createTextNode("ter");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ dayNode = doc.createCDATASection("day");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+ dayNode = doc.createCDATASection("day");
+ docFrag = doc.createDocumentFragment();
+ retval = docFrag.appendChild(terNode);
+ retval = docFrag.appendChild(dayNode);
+
+ {
+ success = false;
+ try {
+ retval = titleAttr.insertBefore(docFrag,refChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_attrinsertbefore7();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrlastchild-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrlastchild-expected.txt
new file mode 100644
index 0000000..14472ba
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrlastchild-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrlastchild
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrlastchild.html b/LayoutTests/dom/html/level1/core/hc_attrlastchild.html
new file mode 100644
index 0000000..b362a7a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrlastchild.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrlastchild.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrlastchild.js b/LayoutTests/dom/html/level1/core/hc_attrlastchild.js
new file mode 100644
index 0000000..1df7342
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrlastchild.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrlastchild";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.lastChild for an attribute node contains
+the expected text node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-61AD09FB
+*/
+function hc_attrlastchild() {
+ var success;
+ if(checkInitialization(builder, "hc_attrlastchild") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var otherChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = titleAttr.firstChild;
+
+ assertNotNull("textNodeNotNull",textNode);
+value = textNode.nodeValue;
+
+ assertEquals("child1IsYes","Yes",value);
+ otherChild = textNode.nextSibling;
+
+ assertNull("nextSiblingIsNull",otherChild);
+ otherChild = textNode.previousSibling;
+
+ assertNull("previousSiblingIsNull",otherChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrlastchild();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrname-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrname-expected.txt
new file mode 100644
index 0000000..1cb8d98
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrname-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrname
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrname.html b/LayoutTests/dom/html/level1/core/hc_attrname.html
new file mode 100644
index 0000000..b93b715
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrname.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrname.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrname.js b/LayoutTests/dom/html/level1/core/hc_attrname.js
new file mode 100644
index 0000000..890fae1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrname.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrname";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the attribute named class from the last
+ child of of the second "p" element and examine its
+ NodeName.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1112119403
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+*/
+function hc_attrname() {
+ var success;
+ if(checkInitialization(builder, "hc_attrname") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var streetAttr;
+ var strong1;
+ var strong2;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(1);
+ attributes = testNode.attributes;
+
+ streetAttr = attributes.getNamedItem("class");
+ strong1 = streetAttr.nodeName;
+
+ strong2 = streetAttr.name;
+
+ assertEqualsAutoCase("attribute", "nodeName","class",strong1);
+ assertEqualsAutoCase("attribute", "name","class",strong2);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrname();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull-expected.txt
new file mode 100644
index 0000000..aef94d3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrnextsiblingnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull.html b/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull.html
new file mode 100644
index 0000000..ff2d600
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrnextsiblingnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull.js b/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull.js
new file mode 100644
index 0000000..12fc9f9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrnextsiblingnull.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrnextsiblingnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getNextSibling()" method for an Attr node should return null.
+Retrieve the attribute named "domestic" from the last child of of the
+first employee and examine its NextSibling node. This test uses the
+"getNamedItem(name)" method from the NamedNodeMap interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+*/
+function hc_attrnextsiblingnull() {
+ var success;
+ if(checkInitialization(builder, "hc_attrnextsiblingnull") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var domesticAttr;
+ var s;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(0);
+ attributes = testNode.attributes;
+
+ domesticAttr = attributes.getNamedItem("title");
+ s = domesticAttr.nextSibling;
+
+ assertNull("attrNextSiblingNullAssert",s);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrnextsiblingnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrnormalize-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrnormalize-expected.txt
new file mode 100644
index 0000000..b852409
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrnormalize-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrnormalize
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrnormalize.html b/LayoutTests/dom/html/level1/core/hc_attrnormalize.html
new file mode 100644
index 0000000..7e41a62
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrnormalize.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrnormalize.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrnormalize.js b/LayoutTests/dom/html/level1/core/hc_attrnormalize.js
new file mode 100644
index 0000000..d9f5e29
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrnormalize.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrnormalize";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Appends a text node to an attribute, normalizes the attribute
+and checks for a single child node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162CF083
+*/
+function hc_attrnormalize() {
+ var success;
+ if(checkInitialization(builder, "hc_attrnormalize") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var firstChild;
+ var secondChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = doc.createTextNode("terday");
+ retval = titleAttr.appendChild(textNode);
+ textNode = doc.createTextNode("");
+ retval = titleAttr.appendChild(textNode);
+ testNode.normalize();
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","Yesterday",value);
+ firstChild = titleAttr.firstChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","Yesterday",value);
+ secondChild = firstChild.nextSibling;
+
+ assertNull("secondChildIsNull",secondChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrnormalize();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrparentnodenull-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrparentnodenull-expected.txt
new file mode 100644
index 0000000..c92e147
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrparentnodenull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrparentnodenull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrparentnodenull.html b/LayoutTests/dom/html/level1/core/hc_attrparentnodenull.html
new file mode 100644
index 0000000..679e7bb
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrparentnodenull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrparentnodenull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrparentnodenull.js b/LayoutTests/dom/html/level1/core/hc_attrparentnodenull.js
new file mode 100644
index 0000000..3c6a403
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrparentnodenull.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrparentnodenull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getParentNode()" method for an Attr node should return null. Retrieve
+the attribute named "domestic" from the last child of the first employee
+and examine its parentNode attribute. This test also uses the "getNamedItem(name)"
+method from the NamedNodeMap interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+*/
+function hc_attrparentnodenull() {
+ var success;
+ if(checkInitialization(builder, "hc_attrparentnodenull") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var domesticAttr;
+ var s;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(0);
+ attributes = testNode.attributes;
+
+ domesticAttr = attributes.getNamedItem("title");
+ s = domesticAttr.parentNode;
+
+ assertNull("attrParentNodeNullAssert",s);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrparentnodenull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull-expected.txt
new file mode 100644
index 0000000..94e1c20
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrprevioussiblingnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull.html b/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull.html
new file mode 100644
index 0000000..ce7f373
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrprevioussiblingnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull.js b/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull.js
new file mode 100644
index 0000000..2773718
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrprevioussiblingnull.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrprevioussiblingnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getPreviousSibling()" method for an Attr node should return null.
+Retrieve the attribute named "domestic" from the last child of of the
+first employee and examine its PreviousSibling node. This test uses the
+"getNamedItem(name)" method from the NamedNodeMap interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+*/
+function hc_attrprevioussiblingnull() {
+ var success;
+ if(checkInitialization(builder, "hc_attrprevioussiblingnull") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var domesticAttr;
+ var s;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(0);
+ attributes = testNode.attributes;
+
+ domesticAttr = attributes.getNamedItem("title");
+ s = domesticAttr.previousSibling;
+
+ assertNull("attrPreviousSiblingNullAssert",s);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrprevioussiblingnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrremovechild1-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrremovechild1-expected.txt
new file mode 100644
index 0000000..eb15e21
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrremovechild1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrremovechild1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrremovechild1.html b/LayoutTests/dom/html/level1/core/hc_attrremovechild1.html
new file mode 100644
index 0000000..7ec22ff
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrremovechild1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrremovechild1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrremovechild1.js b/LayoutTests/dom/html/level1/core/hc_attrremovechild1.js
new file mode 100644
index 0000000..5f98746
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrremovechild1.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrremovechild1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Removes the child node of an attribute and checks that the value is empty.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066
+*/
+function hc_attrremovechild1() {
+ var success;
+ if(checkInitialization(builder, "hc_attrremovechild1") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var firstChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = titleAttr.firstChild;
+
+ assertNotNull("attrChildNotNull",textNode);
+retval = titleAttr.removeChild(textNode);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","",value);
+ value = retval.nodeValue;
+
+ assertEquals("retvalValue","Yes",value);
+ firstChild = titleAttr.firstChild;
+
+ assertNull("firstChildNull",firstChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrremovechild1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrremovechild2-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrremovechild2-expected.txt
new file mode 100644
index 0000000..4f37a49
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrremovechild2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrremovechild2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrremovechild2.html b/LayoutTests/dom/html/level1/core/hc_attrremovechild2.html
new file mode 100644
index 0000000..f8057f6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrremovechild2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrremovechild2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrremovechild2.js b/LayoutTests/dom/html/level1/core/hc_attrremovechild2.js
new file mode 100644
index 0000000..3e19f4e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrremovechild2.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrremovechild2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Attempts to remove a freshly created text node which should result in a NOT_FOUND_ERR exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066
+*/
+function hc_attrremovechild2() {
+ var success;
+ if(checkInitialization(builder, "hc_attrremovechild2") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = doc.createTextNode("Yesterday");
+
+ {
+ success = false;
+ try {
+ retval = titleAttr.removeChild(textNode);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 8);
+ }
+ assertTrue("throw_NOT_FOUND_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_attrremovechild2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrreplacechild1-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrreplacechild1-expected.txt
new file mode 100644
index 0000000..c76d0a5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrreplacechild1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrreplacechild1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrreplacechild1.html b/LayoutTests/dom/html/level1/core/hc_attrreplacechild1.html
new file mode 100644
index 0000000..be52c6d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrreplacechild1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrreplacechild1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrreplacechild1.js b/LayoutTests/dom/html/level1/core/hc_attrreplacechild1.js
new file mode 100644
index 0000000..ff499e5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrreplacechild1.js
@@ -0,0 +1,135 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrreplacechild1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Replaces a text node of an attribute and checks if the value of
+the attribute is changed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+*/
+function hc_attrreplacechild1() {
+ var success;
+ if(checkInitialization(builder, "hc_attrreplacechild1") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var firstChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = doc.createTextNode("terday");
+ firstChild = titleAttr.firstChild;
+
+ assertNotNull("attrChildNotNull",firstChild);
+retval = titleAttr.replaceChild(textNode,firstChild);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","terday",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","terday",value);
+ value = retval.nodeValue;
+
+ assertEquals("retvalValue","Yes",value);
+ firstChild = titleAttr.firstChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","terday",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrreplacechild1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrreplacechild2-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrreplacechild2-expected.txt
new file mode 100644
index 0000000..798bea3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrreplacechild2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrreplacechild2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrreplacechild2.html b/LayoutTests/dom/html/level1/core/hc_attrreplacechild2.html
new file mode 100644
index 0000000..1b272ec
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrreplacechild2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrreplacechild2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrreplacechild2.js b/LayoutTests/dom/html/level1/core/hc_attrreplacechild2.js
new file mode 100644
index 0000000..c26d316
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrreplacechild2.js
@@ -0,0 +1,141 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrreplacechild2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Replaces a text node of an attribute with a document fragment and checks if the value of
+the attribute is changed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+*/
+function hc_attrreplacechild2() {
+ var success;
+ if(checkInitialization(builder, "hc_attrreplacechild2") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var terNode;
+ var dayNode;
+ var docFrag;
+ var retval;
+ var firstChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ terNode = doc.createTextNode("ter");
+ dayNode = doc.createTextNode("day");
+ docFrag = doc.createDocumentFragment();
+ retval = docFrag.appendChild(terNode);
+ retval = docFrag.appendChild(dayNode);
+ firstChild = titleAttr.firstChild;
+
+ assertNotNull("attrChildNotNull",firstChild);
+retval = titleAttr.replaceChild(docFrag,firstChild);
+ value = titleAttr.value;
+
+ assertEquals("attrValue","terday",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","terday",value);
+ value = retval.nodeValue;
+
+ assertEquals("retvalValue","Yes",value);
+ firstChild = titleAttr.firstChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","ter",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrreplacechild2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrsetvalue1-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrsetvalue1-expected.txt
new file mode 100644
index 0000000..edfe74b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrsetvalue1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrsetvalue1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrsetvalue1.html b/LayoutTests/dom/html/level1/core/hc_attrsetvalue1.html
new file mode 100644
index 0000000..20cbcec
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrsetvalue1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrsetvalue1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrsetvalue1.js b/LayoutTests/dom/html/level1/core/hc_attrsetvalue1.js
new file mode 100644
index 0000000..457f7b6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrsetvalue1.js
@@ -0,0 +1,135 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrsetvalue1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Sets Attr.value on an attribute that only has a simple value.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474
+*/
+function hc_attrsetvalue1() {
+ var success;
+ if(checkInitialization(builder, "hc_attrsetvalue1") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var retval;
+ var firstChild;
+ var otherChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ firstChild = titleAttr.firstChild;
+
+ assertNotNull("attrChildNotNull",firstChild);
+titleAttr.value = "Tomorrow";
+
+ firstChild.nodeValue = "impl reused node";
+
+ value = titleAttr.value;
+
+ assertEquals("attrValue","Tomorrow",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","Tomorrow",value);
+ firstChild = titleAttr.lastChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","Tomorrow",value);
+ otherChild = firstChild.nextSibling;
+
+ assertNull("nextSiblingIsNull",otherChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrsetvalue1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrsetvalue2-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrsetvalue2-expected.txt
new file mode 100644
index 0000000..34743da
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrsetvalue2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrsetvalue2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrsetvalue2.html b/LayoutTests/dom/html/level1/core/hc_attrsetvalue2.html
new file mode 100644
index 0000000..55150ca
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrsetvalue2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrsetvalue2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrsetvalue2.js b/LayoutTests/dom/html/level1/core/hc_attrsetvalue2.js
new file mode 100644
index 0000000..029d7d5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrsetvalue2.js
@@ -0,0 +1,138 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrsetvalue2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Sets Attr.value on an attribute that should contain multiple child nodes.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-221662474
+*/
+function hc_attrsetvalue2() {
+ var success;
+ if(checkInitialization(builder, "hc_attrsetvalue2") != null) return;
+ var doc;
+ var acronymList;
+ var testNode;
+ var attributes;
+ var titleAttr;
+ var value;
+ var textNode;
+ var retval;
+ var firstChild;
+ var otherChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ acronymList = doc.getElementsByTagName("acronym");
+ testNode = acronymList.item(3);
+ attributes = testNode.attributes;
+
+ titleAttr = attributes.getNamedItem("title");
+ textNode = doc.createTextNode("terday");
+ retval = titleAttr.appendChild(textNode);
+ firstChild = titleAttr.firstChild;
+
+ assertNotNull("attrChildNotNull",firstChild);
+titleAttr.value = "Tomorrow";
+
+ firstChild.nodeValue = "impl reused node";
+
+ value = titleAttr.value;
+
+ assertEquals("attrValue","Tomorrow",value);
+ value = titleAttr.nodeValue;
+
+ assertEquals("attrNodeValue","Tomorrow",value);
+ firstChild = titleAttr.lastChild;
+
+ value = firstChild.nodeValue;
+
+ assertEquals("firstChildValue","Tomorrow",value);
+ otherChild = firstChild.nextSibling;
+
+ assertNull("nextSiblingIsNull",otherChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrsetvalue2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue-expected.txt
new file mode 100644
index 0000000..54d18d3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrspecifiedvalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue.html b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue.html
new file mode 100644
index 0000000..a1d316d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrspecifiedvalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue.js b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue.js
new file mode 100644
index 0000000..deb504d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvalue.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrspecifiedvalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getSpecified()" method for an Attr node should
+ be set to true if the attribute was explicitly given
+ a value.
+ Retrieve the attribute named "domestic" from the last
+ child of of the first employee and examine the value
+ returned by the "getSpecified()" method. This test uses
+ the "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-862529273
+*/
+function hc_attrspecifiedvalue() {
+ var success;
+ if(checkInitialization(builder, "hc_attrspecifiedvalue") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var domesticAttr;
+ var state;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(0);
+ attributes = testNode.attributes;
+
+ domesticAttr = attributes.getNamedItem("title");
+ state = domesticAttr.specified;
+
+ assertTrue("acronymTitleSpecified",state);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrspecifiedvalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged-expected.txt b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged-expected.txt
new file mode 100644
index 0000000..29cda70
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrspecifiedvaluechanged
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged.html b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged.html
new file mode 100644
index 0000000..5694f7e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_attrspecifiedvaluechanged.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged.js b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged.js
new file mode 100644
index 0000000..fd65931
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_attrspecifiedvaluechanged.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_attrspecifiedvaluechanged";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getSpecified()" method for an Attr node should return true if the
+ value of the attribute is changed.
+ Retrieve the attribute named "class" from the last
+ child of of the THIRD employee and change its
+ value to "Yes"(which is the default DTD value). This
+ should cause the "getSpecified()" method to be true.
+ This test uses the "setAttribute(name,value)" method
+ from the Element interface and the "getNamedItem(name)"
+ method from the NamedNodeMap interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-862529273
+*/
+function hc_attrspecifiedvaluechanged() {
+ var success;
+ if(checkInitialization(builder, "hc_attrspecifiedvaluechanged") != null) return;
+ var doc;
+ var addressList;
+ var testNode;
+ var attributes;
+ var streetAttr;
+ var state;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testNode = addressList.item(2);
+ testNode.setAttribute("class","Yα");
+ attributes = testNode.attributes;
+
+ streetAttr = attributes.getNamedItem("class");
+ state = streetAttr.specified;
+
+ assertTrue("acronymClassSpecified",state);
+
+}
+
+
+
+
+function runTest() {
+ hc_attrspecifiedvaluechanged();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataappenddata-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataappenddata-expected.txt
new file mode 100644
index 0000000..825535f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataappenddata-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataappenddata
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataappenddata.html b/LayoutTests/dom/html/level1/core/hc_characterdataappenddata.html
new file mode 100644
index 0000000..054fe6b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataappenddata.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataappenddata.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataappenddata.js b/LayoutTests/dom/html/level1/core/hc_characterdataappenddata.js
new file mode 100644
index 0000000..a479174
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataappenddata.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataappenddata";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "appendData(arg)" method appends a string to the end
+ of the character data of the node.
+
+ Retrieve the character data from the second child
+ of the first employee. The appendData(arg) method is
+ called with arg=", Esquire". The method should append
+ the specified data to the already existing character
+ data. The new value return by the "getLength()" method
+ should be 24.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F
+*/
+function hc_characterdataappenddata() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataappenddata") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childValue;
+ var childLength;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.appendData(", Esquire");
+ childValue = child.data;
+
+ childLength = childValue.length;
+ assertEquals("characterdataAppendDataAssert",24,childLength);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataappenddata();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata-expected.txt
new file mode 100644
index 0000000..c041751
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataappenddatagetdata
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata.html b/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata.html
new file mode 100644
index 0000000..8d0eaed
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataappenddatagetdata.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata.js b/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata.js
new file mode 100644
index 0000000..4aed0ce
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataappenddatagetdata.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataappenddatagetdata";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ On successful invocation of the "appendData(arg)"
+ method the "getData()" method provides access to the
+ concatentation of data and the specified string.
+
+ Retrieve the character data from the second child
+ of the first employee. The appendData(arg) method is
+ called with arg=", Esquire". The method should append
+ the specified data to the already existing character
+ data. The new value return by the "getData()" method
+ should be "Margaret Martin, Esquire".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-32791A2F
+*/
+function hc_characterdataappenddatagetdata() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataappenddatagetdata") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.appendData(", Esquire");
+ childData = child.data;
+
+ assertEquals("characterdataAppendDataGetDataAssert","Margaret Martin, Esquire",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataappenddatagetdata();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining-expected.txt
new file mode 100644
index 0000000..55361c4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedatabegining
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining.html b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining.html
new file mode 100644
index 0000000..18f0a58
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatadeletedatabegining.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining.js b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining.js
new file mode 100644
index 0000000..8fc32ed
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatabegining.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedatabegining";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "deleteData(offset,count)" method removes a range of
+characters from the node. Delete data at the beginning
+of the character data.
+
+Retrieve the character data from the last child of the
+first employee. The "deleteData(offset,count)"
+method is then called with offset=0 and count=16.
+The method should delete the characters from position
+0 thru position 16. The new value of the character data
+should be "Dallas, Texas 98551".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+*/
+function hc_characterdatadeletedatabegining() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatadeletedatabegining") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.deleteData(0,16);
+ childData = child.data;
+
+ assertEquals("data","Dallas, Texas 98551",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatadeletedatabegining();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend-expected.txt
new file mode 100644
index 0000000..4effc83
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedataend
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend.html b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend.html
new file mode 100644
index 0000000..d2524be
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatadeletedataend.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend.js b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend.js
new file mode 100644
index 0000000..8d567d0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataend.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedataend";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "deleteData(offset,count)" method removes a range of
+ characters from the node. Delete data at the end
+ of the character data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=30 and count=5.
+ The method should delete the characters from position
+ 30 thru position 35. The new value of the character data
+ should be "1230 North Ave. Dallas, Texas".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+*/
+function hc_characterdatadeletedataend() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatadeletedataend") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.deleteData(30,5);
+ childData = child.data;
+
+ assertEquals("characterdataDeleteDataEndAssert","1230 North Ave. Dallas, Texas ",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatadeletedataend();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength-expected.txt
new file mode 100644
index 0000000..c9ea475
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedataexceedslength
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength.html b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength.html
new file mode 100644
index 0000000..97b5a92
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatadeletedataexceedslength.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength.js b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength.js
new file mode 100644
index 0000000..4dccc5e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedataexceedslength.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedataexceedslength";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the sum of the offset and count used in the
+ "deleteData(offset,count) method is greater than the
+ length of the character data then all the characters
+ from the offset to the end of the data are deleted.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=4 and count=50.
+ The method should delete the characters from position 4
+ to the end of the data since the offset+count(50+4)
+ is greater than the length of the character data(35).
+ The new value of the character data should be "1230".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+*/
+function hc_characterdatadeletedataexceedslength() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatadeletedataexceedslength") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.deleteData(4,50);
+ childData = child.data;
+
+ assertEquals("characterdataDeleteDataExceedsLengthAssert","1230",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatadeletedataexceedslength();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata-expected.txt
new file mode 100644
index 0000000..05715b1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedatagetlengthanddata
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata.html b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata.html
new file mode 100644
index 0000000..2148fb3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatadeletedatagetlengthanddata.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata.js b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata.js
new file mode 100644
index 0000000..b3784f3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatagetlengthanddata.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedatagetlengthanddata";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ On successful invocation of the "deleteData(offset,count)"
+ method, the "getData()" and "getLength()" methods reflect
+ the changes.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=30 and count=5.
+ The method should delete the characters from position
+ 30 thru position 35. The new value of the character data
+ should be "1230 North Ave. Dallas, Texas" which is
+ returned by the "getData()" method and "getLength()"
+ method should return 30".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7D61178C
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+*/
+function hc_characterdatadeletedatagetlengthanddata() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatadeletedatagetlengthanddata") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+ var childLength;
+ var result = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.deleteData(30,5);
+ childData = child.data;
+
+ assertEquals("data","1230 North Ave. Dallas, Texas ",childData);
+ childLength = child.length;
+
+ assertEquals("length",30,childLength);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatadeletedatagetlengthanddata();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle-expected.txt
new file mode 100644
index 0000000..46b1ad8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedatamiddle
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle.html b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle.html
new file mode 100644
index 0000000..06fc126
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatadeletedatamiddle.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle.js b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle.js
new file mode 100644
index 0000000..9afa810
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatadeletedatamiddle.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatadeletedatamiddle";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "deleteData(offset,count)" method removes a range of
+ characters from the node. Delete data in the middle
+ of the character data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "deleteData(offset,count)"
+ method is then called with offset=16 and count=8.
+ The method should delete the characters from position
+ 16 thru position 24. The new value of the character data
+ should be "1230 North Ave. Texas 98551".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+*/
+function hc_characterdatadeletedatamiddle() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatadeletedatamiddle") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.deleteData(16,8);
+ childData = child.data;
+
+ assertEquals("characterdataDeleteDataMiddleAssert","1230 North Ave. Texas 98551",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatadeletedatamiddle();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatagetdata-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatagetdata-expected.txt
new file mode 100644
index 0000000..f09b690
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatagetdata-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatagetdata
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatagetdata.html b/LayoutTests/dom/html/level1/core/hc_characterdatagetdata.html
new file mode 100644
index 0000000..d099f6b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatagetdata.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatagetdata.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatagetdata.js b/LayoutTests/dom/html/level1/core/hc_characterdatagetdata.js
new file mode 100644
index 0000000..ef16bb0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatagetdata.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatagetdata";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ The "getData()" method retrieves the character data
+
+ currently stored in the node.
+
+ Retrieve the character data from the second child
+
+ of the first employee and invoke the "getData()"
+
+ method. The method returns the character data
+
+ string.
+
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+*/
+function hc_characterdatagetdata() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatagetdata") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ childData = child.data;
+
+ assertEquals("characterdataGetDataAssert","Margaret Martin",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatagetdata();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatagetlength-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatagetlength-expected.txt
new file mode 100644
index 0000000..c642592
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatagetlength-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatagetlength
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatagetlength.html b/LayoutTests/dom/html/level1/core/hc_characterdatagetlength.html
new file mode 100644
index 0000000..742fb44
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatagetlength.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatagetlength.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatagetlength.js b/LayoutTests/dom/html/level1/core/hc_characterdatagetlength.js
new file mode 100644
index 0000000..214b14c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatagetlength.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatagetlength";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getLength()" method returns the number of characters
+ stored in this nodes data.
+ Retrieve the character data from the second
+ child of the first employee and examine the
+ value returned by the getLength() method.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7D61178C
+*/
+function hc_characterdatagetlength() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatagetlength") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childValue;
+ var childLength;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ childValue = child.data;
+
+ childLength = childValue.length;
+ assertEquals("characterdataGetLengthAssert",15,childLength);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatagetlength();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative-expected.txt
new file mode 100644
index 0000000..8a76fdf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.html
new file mode 100644
index 0000000..85227a0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrdeletedatacountnegative.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.js
new file mode 100644
index 0000000..9d03881
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrdeletedatacountnegative";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("signed", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=10 and count=-3. It should raise the
+ desired exception since the count is negative.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function hc_characterdataindexsizeerrdeletedatacountnegative() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrdeletedatacountnegative") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childSubstring;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ childSubstring = child.substringData(10,-3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throws_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrdeletedatacountnegative();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater-expected.txt
new file mode 100644
index 0000000..1b7782f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.html
new file mode 100644
index 0000000..2f8d186
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrdeletedataoffsetgreater.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.js
new file mode 100644
index 0000000..a66a6c1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrdeletedataoffsetgreater";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater that the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=40 and count=3. It should raise the
+ desired exception since the offset is greater than the
+ number of characters in the string.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_characterdataindexsizeerrdeletedataoffsetgreater() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrdeletedataoffsetgreater") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ child.deleteData(40,3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throw_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrdeletedataoffsetgreater();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative-expected.txt
new file mode 100644
index 0000000..ce1be33
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.html
new file mode 100644
index 0000000..5e4f0d6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrdeletedataoffsetnegative.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.js
new file mode 100644
index 0000000..ca26f7d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrdeletedataoffsetnegative";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("signed", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "deleteData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "deleteData(offset,count)"
+ method with offset=-5 and count=3. It should raise the
+ desired exception since the offset is negative.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+*/
+function hc_characterdataindexsizeerrdeletedataoffsetnegative() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrdeletedataoffsetnegative") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ child.deleteData(-5,3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throws_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrdeletedataoffsetnegative();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater-expected.txt
new file mode 100644
index 0000000..434f5e6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.html
new file mode 100644
index 0000000..3fd4cec
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrinsertdataoffsetgreater.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.js
new file mode 100644
index 0000000..0abfe7e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrinsertdataoffsetgreater";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertData(offset,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its insertData"(offset,arg)"
+ method with offset=40 and arg="ABC". It should raise
+ the desired exception since the offset is greater than
+ the number of characters in the string.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_characterdataindexsizeerrinsertdataoffsetgreater() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrinsertdataoffsetgreater") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ child.deleteData(40,3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throw_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrinsertdataoffsetgreater();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative-expected.txt
new file mode 100644
index 0000000..e114ede
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.html
new file mode 100644
index 0000000..acfac05
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrinsertdataoffsetnegative.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.js
new file mode 100644
index 0000000..4712b94
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrinsertdataoffsetnegative";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("signed", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertData(offset,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its insertData"(offset,arg)"
+ method with offset=-5 and arg="ABC". It should raise
+ the desired exception since the offset is negative.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-E5CBA7FB')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function hc_characterdataindexsizeerrinsertdataoffsetnegative() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrinsertdataoffsetnegative") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ child.replaceData(-5,3,"ABC");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throws_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrinsertdataoffsetnegative();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative-expected.txt
new file mode 100644
index 0000000..d853344
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.html
new file mode 100644
index 0000000..7314f13
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrreplacedatacountnegative.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.js
new file mode 100644
index 0000000..7a2b7d2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrreplacedatacountnegative";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("signed", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=10
+ and count=-3 and arg="ABC". It should raise the
+ desired exception since the count is negative.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function hc_characterdataindexsizeerrreplacedatacountnegative() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrreplacedatacountnegative") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var badString;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ badString = child.substringData(10,-3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throws_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrreplacedatacountnegative();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater-expected.txt
new file mode 100644
index 0000000..db9fa89
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.html
new file mode 100644
index 0000000..7323060
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrreplacedataoffsetgreater.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.js
new file mode 100644
index 0000000..dc62aa7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrreplacedataoffsetgreater";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the length of the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=40
+ and count=3 and arg="ABC". It should raise the
+ desired exception since the offset is greater than the
+ length of the string.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=242
+*/
+function hc_characterdataindexsizeerrreplacedataoffsetgreater() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrreplacedataoffsetgreater") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ child.deleteData(40,3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throw_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrreplacedataoffsetgreater();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative-expected.txt
new file mode 100644
index 0000000..0fdb1de
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.html
new file mode 100644
index 0000000..e8892ee
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrreplacedataoffsetnegative.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.js
new file mode 100644
index 0000000..af267df
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrreplacedataoffsetnegative";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("signed", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceData(offset,count,arg)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its
+ "replaceData(offset,count,arg) method with offset=-5
+ and count=3 and arg="ABC". It should raise the
+ desired exception since the offset is negative.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-E5CBA7FB')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB
+*/
+function hc_characterdataindexsizeerrreplacedataoffsetnegative() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrreplacedataoffsetnegative") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ child.replaceData(-5,3,"ABC");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throws_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrreplacedataoffsetnegative();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative-expected.txt
new file mode 100644
index 0000000..71641dd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrsubstringcountnegative
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.html
new file mode 100644
index 0000000..2a5a917
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrsubstringcountnegative.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.js
new file mode 100644
index 0000000..2e96dbe
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringcountnegative.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrsubstringcountnegative";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("signed", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified count
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=10 and count=-3. It should raise the
+ desired exception since the count is negative.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function hc_characterdataindexsizeerrsubstringcountnegative() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrsubstringcountnegative") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var badSubstring;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ badSubstring = child.substringData(10,-3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throws_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrsubstringcountnegative();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset-expected.txt
new file mode 100644
index 0000000..95dcabf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.html
new file mode 100644
index 0000000..58f2152
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrsubstringnegativeoffset.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.js
new file mode 100644
index 0000000..bc2fbf1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrsubstringnegativeoffset";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("signed", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is negative.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=-5 and count=3. It should raise the
+ desired exception since the offset is negative.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function hc_characterdataindexsizeerrsubstringnegativeoffset() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrsubstringnegativeoffset") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var badString;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ badString = child.substringData(-5,3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throws_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrsubstringnegativeoffset();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater-expected.txt
new file mode 100644
index 0000000..b53c957
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.html b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.html
new file mode 100644
index 0000000..ab662c8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdataindexsizeerrsubstringoffsetgreater.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.js b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.js
new file mode 100644
index 0000000..65325c7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdataindexsizeerrsubstringoffsetgreater";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "substringData(offset,count)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset
+ is greater than the number of characters in the string.
+
+ Retrieve the character data of the last child of the
+ first employee and invoke its "substringData(offset,count)
+ method with offset=40 and count=3. It should raise the
+ desired exception since the offsets value is greater
+ than the length.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-6531BCCF')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_characterdataindexsizeerrsubstringoffsetgreater() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdataindexsizeerrsubstringoffsetgreater") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var badString;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ badString = child.substringData(40,3);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throw_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdataindexsizeerrsubstringoffsetgreater();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning-expected.txt
new file mode 100644
index 0000000..a8b179a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatainsertdatabeginning
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning.html b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning.html
new file mode 100644
index 0000000..fd9b1d0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatainsertdatabeginning.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning.js b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning.js
new file mode 100644
index 0000000..576e855
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatabeginning.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatainsertdatabeginning";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "insertData(offset,arg)" method will insert a string
+at the specified character offset. Insert the data at
+the beginning of the character data.
+
+Retrieve the character data from the second child of
+the first employee. The "insertData(offset,arg)"
+method is then called with offset=0 and arg="Mss.".
+The method should insert the string "Mss." at position 0.
+The new value of the character data should be
+"Mss. Margaret Martin".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F
+*/
+function hc_characterdatainsertdatabeginning() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatainsertdatabeginning") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.insertData(0,"Mss. ");
+ childData = child.data;
+
+ assertEquals("characterdataInsertDataBeginningAssert","Mss. Margaret Martin",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatainsertdatabeginning();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend-expected.txt
new file mode 100644
index 0000000..56f9db6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatainsertdataend
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend.html b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend.html
new file mode 100644
index 0000000..9606105
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatainsertdataend.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend.js b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend.js
new file mode 100644
index 0000000..424f776
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdataend.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatainsertdataend";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertData(offset,arg)" method will insert a string
+ at the specified character offset. Insert the data at
+ the end of the character data.
+
+ Retrieve the character data from the second child of
+ the first employee. The "insertData(offset,arg)"
+ method is then called with offset=15 and arg=", Esquire".
+ The method should insert the string ", Esquire" at
+ position 15. The new value of the character data should
+ be "Margaret Martin, Esquire".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F
+*/
+function hc_characterdatainsertdataend() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatainsertdataend") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.insertData(15,", Esquire");
+ childData = child.data;
+
+ assertEquals("characterdataInsertDataEndAssert","Margaret Martin, Esquire",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatainsertdataend();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle-expected.txt
new file mode 100644
index 0000000..a095db9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatainsertdatamiddle
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle.html b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle.html
new file mode 100644
index 0000000..cc28b54
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatainsertdatamiddle.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle.js b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle.js
new file mode 100644
index 0000000..081714c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatainsertdatamiddle.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatainsertdatamiddle";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertData(offset,arg)" method will insert a string
+ at the specified character offset. Insert the data in
+ the middle of the character data.
+
+ Retrieve the character data from the second child of
+ the first employee. The "insertData(offset,arg)"
+ method is then called with offset=9 and arg="Ann".
+ The method should insert the string "Ann" at position 9.
+ The new value of the character data should be
+ "Margaret Ann Martin".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3EDB695F
+*/
+function hc_characterdatainsertdatamiddle() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatainsertdatamiddle") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.insertData(9,"Ann ");
+ childData = child.data;
+
+ assertEquals("characterdataInsertDataMiddleAssert","Margaret Ann Martin",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatainsertdatamiddle();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining-expected.txt
new file mode 100644
index 0000000..25627d9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedatabegining
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining.html b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining.html
new file mode 100644
index 0000000..d229f77
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatareplacedatabegining.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining.js b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining.js
new file mode 100644
index 0000000..2f5820d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatabegining.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedatabegining";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "replaceData(offset,count,arg)" method replaces the
+characters starting at the specified offset with the
+specified string. Test for replacement in the
+middle of the data.
+
+Retrieve the character data from the last child of the
+first employee. The "replaceData(offset,count,arg)"
+method is then called with offset=5 and count=5 and
+arg="South". The method should replace characters five
+thru 9 of the character data with "South".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB
+*/
+function hc_characterdatareplacedatabegining() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatareplacedatabegining") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.replaceData(0,4,"2500");
+ childData = child.data;
+
+ assertEquals("characterdataReplaceDataBeginingAssert","2500 North Ave. Dallas, Texas 98551",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatareplacedatabegining();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend-expected.txt
new file mode 100644
index 0000000..c476a3d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedataend
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend.html b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend.html
new file mode 100644
index 0000000..cc046e9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatareplacedataend.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend.js b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend.js
new file mode 100644
index 0000000..8c01d58
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataend.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedataend";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test for replacement at the
+ end of the data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=30 and count=5 and
+ arg="98665". The method should replace characters 30
+ thru 34 of the character data with "98665".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB
+*/
+function hc_characterdatareplacedataend() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatareplacedataend") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.replaceData(30,5,"98665");
+ childData = child.data;
+
+ assertEquals("characterdataReplaceDataEndAssert","1230 North Ave. Dallas, Texas 98665",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatareplacedataend();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg-expected.txt
new file mode 100644
index 0000000..90edeef
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedataexceedslengthofarg
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg.html b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg.html
new file mode 100644
index 0000000..58785d1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatareplacedataexceedslengthofarg.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg.js b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg.js
new file mode 100644
index 0000000..a9cf8e2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofarg.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedataexceedslengthofarg";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test the situation where the length
+ of the arg string is greater than the specified offset.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=0 and count=4 and
+ arg="260030". The method should replace characters one
+ thru four with "260030". Note that the length of the
+ specified string is greater that the specified offset.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB
+*/
+function hc_characterdatareplacedataexceedslengthofarg() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatareplacedataexceedslengthofarg") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.replaceData(0,4,"260030");
+ childData = child.data;
+
+ assertEquals("characterdataReplaceDataExceedsLengthOfArgAssert","260030 North Ave. Dallas, Texas 98551",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatareplacedataexceedslengthofarg();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata-expected.txt
new file mode 100644
index 0000000..ea8fb30
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedataexceedslengthofdata
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata.html b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata.html
new file mode 100644
index 0000000..03e8938
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatareplacedataexceedslengthofdata.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata.js b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata.js
new file mode 100644
index 0000000..b2b4205
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedataexceedslengthofdata.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedataexceedslengthofdata";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the sum of the offset and count exceeds the length then
+ all the characters to the end of the data are replaced.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=0 and count=50 and
+ arg="2600". The method should replace all the characters
+ with "2600". This is because the sum of the offset and
+ count exceeds the length of the character data.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB
+*/
+function hc_characterdatareplacedataexceedslengthofdata() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatareplacedataexceedslengthofdata") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.replaceData(0,50,"2600");
+ childData = child.data;
+
+ assertEquals("characterdataReplaceDataExceedsLengthOfDataAssert","2600",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatareplacedataexceedslengthofdata();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle-expected.txt
new file mode 100644
index 0000000..6ad4ce2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedatamiddle
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle.html b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle.html
new file mode 100644
index 0000000..2f61916
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatareplacedatamiddle.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle.js b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle.js
new file mode 100644
index 0000000..6558cde
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatareplacedatamiddle.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatareplacedatamiddle";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceData(offset,count,arg)" method replaces the
+ characters starting at the specified offset with the
+ specified string. Test for replacement in the
+ middle of the data.
+
+ Retrieve the character data from the last child of the
+ first employee. The "replaceData(offset,count,arg)"
+ method is then called with offset=5 and count=5 and
+ arg="South". The method should replace characters five
+ thru 9 of the character data with "South".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-E5CBA7FB
+*/
+function hc_characterdatareplacedatamiddle() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatareplacedatamiddle") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.replaceData(5,5,"South");
+ childData = child.data;
+
+ assertEquals("characterdataReplaceDataMiddleAssert","1230 South Ave. Dallas, Texas 98551",childData);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatareplacedatamiddle();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue-expected.txt
new file mode 100644
index 0000000..c1a6d02
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatasetnodevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue.html b/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue.html
new file mode 100644
index 0000000..eb6d45e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatasetnodevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue.js b/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue.js
new file mode 100644
index 0000000..e56ce72
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasetnodevalue.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatasetnodevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setNodeValue()" method changes the character data
+ currently stored in the node.
+ Retrieve the character data from the second child
+ of the first employee and invoke the "setNodeValue()"
+ method, call "getData()" and compare.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359
+*/
+function hc_characterdatasetnodevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatasetnodevalue") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var childData;
+ var childValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ child.nodeValue = "Marilyn Martin";
+
+ childData = child.data;
+
+ assertEquals("data","Marilyn Martin",childData);
+ childValue = child.nodeValue;
+
+ assertEquals("value","Marilyn Martin",childValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatasetnodevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue-expected.txt
new file mode 100644
index 0000000..852506b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatasubstringexceedsvalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue.html b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue.html
new file mode 100644
index 0000000..443ec8d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatasubstringexceedsvalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue.js b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue.js
new file mode 100644
index 0000000..043dac2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringexceedsvalue.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatasubstringexceedsvalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the sum of the "offset" and "count" exceeds the
+ "length" then the "substringData(offset,count)" method
+ returns all the characters to the end of the data.
+
+ Retrieve the character data from the second child
+ of the first employee and access part of the data
+ by using the substringData(offset,count) method
+ with offset=9 and count=10. The method should return
+ the substring "Martin" since offset+count > length
+ (19 > 15).
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF
+*/
+function hc_characterdatasubstringexceedsvalue() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatasubstringexceedsvalue") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var substring;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ substring = child.substringData(9,10);
+ assertEquals("characterdataSubStringExceedsValueAssert","Martin",substring);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatasubstringexceedsvalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue-expected.txt
new file mode 100644
index 0000000..fed5479
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatasubstringvalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue.html b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue.html
new file mode 100644
index 0000000..a057130
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_characterdatasubstringvalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue.js b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue.js
new file mode 100644
index 0000000..379e3b0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_characterdatasubstringvalue.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_characterdatasubstringvalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "substringData(offset,count)" method returns the
+ specified string.
+
+ Retrieve the character data from the second child
+ of the first employee and access part of the data
+ by using the substringData(offset,count) method. The
+ method should return the specified substring starting
+ at position "offset" and extract "count" characters.
+ The method should return the string "Margaret".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6531BCCF
+*/
+function hc_characterdatasubstringvalue() {
+ var success;
+ if(checkInitialization(builder, "hc_characterdatasubstringvalue") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var child;
+ var substring;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(0);
+ child = nameNode.firstChild;
+
+ substring = child.substringData(0,8);
+ assertEquals("characterdataSubStringValueAssert","Margaret",substring);
+
+}
+
+
+
+
+function runTest() {
+ hc_characterdatasubstringvalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_commentgetcomment-expected.txt b/LayoutTests/dom/html/level1/core/hc_commentgetcomment-expected.txt
new file mode 100644
index 0000000..f4b06c3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_commentgetcomment-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_commentgetcomment
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_commentgetcomment.html b/LayoutTests/dom/html/level1/core/hc_commentgetcomment.html
new file mode 100644
index 0000000..0203a96
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_commentgetcomment.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_commentgetcomment.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_commentgetcomment.js b/LayoutTests/dom/html/level1/core/hc_commentgetcomment.js
new file mode 100644
index 0000000..b7c76b4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_commentgetcomment.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_commentgetcomment";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ A comment is all the characters between the starting
+ '<!--' and ending '-->'
+ Retrieve the nodes of the DOM document. Search for a
+ comment node and the content is its value.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1334481328
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=509
+*/
+function hc_commentgetcomment() {
+ var success;
+ if(checkInitialization(builder, "hc_commentgetcomment") != null) return;
+ var doc;
+ var elementList;
+ var child;
+ var childName;
+ var childValue;
+ var commentCount = 0;
+ var childType;
+ var attributes;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.childNodes;
+
+ for(var indexN1005E = 0;indexN1005E < elementList.length; indexN1005E++) {
+ child = elementList.item(indexN1005E);
+ childType = child.nodeType;
+
+
+ if(
+ (8 == childType)
+ ) {
+ childName = child.nodeName;
+
+ assertEquals("nodeName","#comment",childName);
+ childValue = child.nodeValue;
+
+ assertEquals("nodeValue"," This is comment number 1.",childValue);
+ attributes = child.attributes;
+
+ assertNull("attributes",attributes);
+ commentCount += 1;
+
+ }
+
+ }
+ assertTrue("atMostOneComment",
+
+ (commentCount < 2)
+);
+
+}
+
+
+
+
+function runTest() {
+ hc_commentgetcomment();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentcreateattribute-expected.txt
new file mode 100644
index 0000000..d339c54
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreateattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateattribute.html b/LayoutTests/dom/html/level1/core/hc_documentcreateattribute.html
new file mode 100644
index 0000000..1741b72
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentcreateattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateattribute.js b/LayoutTests/dom/html/level1/core/hc_documentcreateattribute.js
new file mode 100644
index 0000000..31284f3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateattribute.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreateattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the entire DOM document and invoke its
+ "createAttribute(name)" method. It should create a
+ new Attribute node with the given name. The name, value
+ and type of the newly created object are retrieved and
+ output.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_documentcreateattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_documentcreateattribute") != null) return;
+ var doc;
+ var newAttrNode;
+ var attrValue;
+ var attrName;
+ var attrType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newAttrNode = doc.createAttribute("title");
+ attrValue = newAttrNode.nodeValue;
+
+ assertEquals("value","",attrValue);
+ attrName = newAttrNode.nodeName;
+
+ assertEqualsAutoCase("attribute", "name","title",attrName);
+ attrType = newAttrNode.nodeType;
+
+ assertEquals("type",2,attrType);
+
+}
+
+
+
+
+function runTest() {
+ hc_documentcreateattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatecomment-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentcreatecomment-expected.txt
new file mode 100644
index 0000000..cea5920
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatecomment-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreatecomment
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatecomment.html b/LayoutTests/dom/html/level1/core/hc_documentcreatecomment.html
new file mode 100644
index 0000000..d027a7e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatecomment.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentcreatecomment.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatecomment.js b/LayoutTests/dom/html/level1/core/hc_documentcreatecomment.js
new file mode 100644
index 0000000..fdd69a8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatecomment.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreatecomment";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "createComment(data)" method creates a new Comment
+ node given the specified string.
+ Retrieve the entire DOM document and invoke its
+ "createComment(data)" method. It should create a new
+ Comment node whose "data" is the specified string.
+ The content, name and type are retrieved and output.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1334481328
+*/
+function hc_documentcreatecomment() {
+ var success;
+ if(checkInitialization(builder, "hc_documentcreatecomment") != null) return;
+ var doc;
+ var newCommentNode;
+ var newCommentValue;
+ var newCommentName;
+ var newCommentType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newCommentNode = doc.createComment("This is a new Comment node");
+ newCommentValue = newCommentNode.nodeValue;
+
+ assertEquals("value","This is a new Comment node",newCommentValue);
+ newCommentName = newCommentNode.nodeName;
+
+ assertEquals("strong","#comment",newCommentName);
+ newCommentType = newCommentNode.nodeType;
+
+ assertEquals("type",8,newCommentType);
+
+}
+
+
+
+
+function runTest() {
+ hc_documentcreatecomment();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment-expected.txt
new file mode 100644
index 0000000..5b4b366
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreatedocumentfragment
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment.html b/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment.html
new file mode 100644
index 0000000..566212e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentcreatedocumentfragment.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment.js b/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment.js
new file mode 100644
index 0000000..40240c5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatedocumentfragment.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreatedocumentfragment";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "createDocumentFragment()" method creates an empty
+ DocumentFragment object.
+ Retrieve the entire DOM document and invoke its
+ "createDocumentFragment()" method. The content, name,
+ type and value of the newly created object are output.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-35CB04B5
+*/
+function hc_documentcreatedocumentfragment() {
+ var success;
+ if(checkInitialization(builder, "hc_documentcreatedocumentfragment") != null) return;
+ var doc;
+ var newDocFragment;
+ var children;
+ var length;
+ var newDocFragmentName;
+ var newDocFragmentType;
+ var newDocFragmentValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newDocFragment = doc.createDocumentFragment();
+ children = newDocFragment.childNodes;
+
+ length = children.length;
+
+ assertEquals("length",0,length);
+ newDocFragmentName = newDocFragment.nodeName;
+
+ assertEquals("strong","#document-fragment",newDocFragmentName);
+ newDocFragmentType = newDocFragment.nodeType;
+
+ assertEquals("type",11,newDocFragmentType);
+ newDocFragmentValue = newDocFragment.nodeValue;
+
+ assertNull("value",newDocFragmentValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_documentcreatedocumentfragment();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateelement-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentcreateelement-expected.txt
new file mode 100644
index 0000000..2a43193
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateelement-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreateelement
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateelement.html b/LayoutTests/dom/html/level1/core/hc_documentcreateelement.html
new file mode 100644
index 0000000..f7eeefe
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateelement.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentcreateelement.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateelement.js b/LayoutTests/dom/html/level1/core/hc_documentcreateelement.js
new file mode 100644
index 0000000..fbba09a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateelement.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreateelement";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "createElement(tagName)" method creates an Element
+ of the type specified.
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method with tagName="acronym".
+ The method should create an instance of an Element node
+ whose tagName is "acronym". The NodeName, NodeType
+ and NodeValue are returned.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547
+*/
+function hc_documentcreateelement() {
+ var success;
+ if(checkInitialization(builder, "hc_documentcreateelement") != null) return;
+ var doc;
+ var newElement;
+ var newElementName;
+ var newElementType;
+ var newElementValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newElement = doc.createElement("acronym");
+ newElementName = newElement.nodeName;
+
+ assertEqualsAutoCase("element", "strong","acronym",newElementName);
+ newElementType = newElement.nodeType;
+
+ assertEquals("type",1,newElementType);
+ newElementValue = newElement.nodeValue;
+
+ assertNull("valueInitiallyNull",newElementValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_documentcreateelement();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive-expected.txt
new file mode 100644
index 0000000..217a461
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreateelementcasesensitive
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive.html b/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive.html
new file mode 100644
index 0000000..32702fd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentcreateelementcasesensitive.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive.js b/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive.js
new file mode 100644
index 0000000..a22069f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreateelementcasesensitive.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreateelementcasesensitive";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tagName parameter in the "createElement(tagName)"
+ method is case-sensitive for XML documents.
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method twice. Once for tagName
+ equal to "acronym" and once for tagName equal to "ACRONYM"
+ Each call should create a distinct Element node. The
+ newly created Elements are then assigned attributes
+ that are retrieved.
+
+ Modified on 27 June 2003 to avoid setting an invalid style
+ values and checked the node names to see if they matched expectations.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_documentcreateelementcasesensitive() {
+ var success;
+ if(checkInitialization(builder, "hc_documentcreateelementcasesensitive") != null) return;
+ var doc;
+ var newElement1;
+ var newElement2;
+ var attribute1;
+ var attribute2;
+ var nodeName1;
+ var nodeName2;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newElement1 = doc.createElement("ACRONYM");
+ newElement2 = doc.createElement("acronym");
+ newElement1.setAttribute("lang","EN");
+ newElement2.setAttribute("title","Dallas");
+ attribute1 = newElement1.getAttribute("lang");
+ attribute2 = newElement2.getAttribute("title");
+ assertEquals("attrib1","EN",attribute1);
+ assertEquals("attrib2","Dallas",attribute2);
+ nodeName1 = newElement1.nodeName;
+
+ nodeName2 = newElement2.nodeName;
+
+ assertEqualsAutoCase("element", "nodeName1","ACRONYM",nodeName1);
+ assertEqualsAutoCase("element", "nodeName2","acronym",nodeName2);
+
+}
+
+
+
+
+function runTest() {
+ hc_documentcreateelementcasesensitive();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode-expected.txt
new file mode 100644
index 0000000..5c20f61
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreatetextnode
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode.html b/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode.html
new file mode 100644
index 0000000..e2d30c2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentcreatetextnode.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode.js b/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode.js
new file mode 100644
index 0000000..8b04106
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentcreatetextnode.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentcreatetextnode";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "createTextNode(data)" method creates a Text node
+ given the specfied string.
+ Retrieve the entire DOM document and invoke its
+ "createTextNode(data)" method. It should create a
+ new Text node whose "data" is the specified string.
+ The NodeName and NodeType are also checked.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1975348127
+*/
+function hc_documentcreatetextnode() {
+ var success;
+ if(checkInitialization(builder, "hc_documentcreatetextnode") != null) return;
+ var doc;
+ var newTextNode;
+ var newTextName;
+ var newTextValue;
+ var newTextType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newTextNode = doc.createTextNode("This is a new Text node");
+ newTextValue = newTextNode.nodeValue;
+
+ assertEquals("value","This is a new Text node",newTextValue);
+ newTextName = newTextNode.nodeName;
+
+ assertEquals("strong","#text",newTextName);
+ newTextType = newTextNode.nodeType;
+
+ assertEquals("type",3,newTextType);
+
+}
+
+
+
+
+function runTest() {
+ hc_documentcreatetextnode();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetdoctype-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentgetdoctype-expected.txt
new file mode 100644
index 0000000..9ac4410
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetdoctype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetdoctype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetdoctype.html b/LayoutTests/dom/html/level1/core/hc_documentgetdoctype.html
new file mode 100644
index 0000000..401ffec
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetdoctype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentgetdoctype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetdoctype.js b/LayoutTests/dom/html/level1/core/hc_documentgetdoctype.js
new file mode 100644
index 0000000..c3aa3c5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetdoctype.js
@@ -0,0 +1,149 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetdoctype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Access Document.doctype for hc_staff, if not text/html should return DocumentType node.
+HTML implementations may return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31
+*/
+function hc_documentgetdoctype() {
+ var success;
+ if(checkInitialization(builder, "hc_documentgetdoctype") != null) return;
+ var doc;
+ var docType;
+ var docTypeName;
+ var nodeValue;
+ var attributes;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+
+ }
+
+ if(
+
+ (docType != null)
+
+ ) {
+ docTypeName = docType.name;
+
+
+ if(
+
+ (builder.contentType == "image/svg+xml")
+
+ ) {
+ assertEquals("nodeNameSVG","svg",docTypeName);
+
+ }
+
+ else {
+ assertEquals("nodeName","html",docTypeName);
+
+ }
+ nodeValue = docType.nodeValue;
+
+ assertNull("nodeValue",nodeValue);
+ attributes = docType.attributes;
+
+ assertNull("attributes",attributes);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_documentgetdoctype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength-expected.txt
new file mode 100644
index 0000000..ab012b2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetelementsbytagnamelength
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength.html b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength.html
new file mode 100644
index 0000000..750e7f6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentgetelementsbytagnamelength.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength.js b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength.js
new file mode 100644
index 0000000..1eb3e39
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamelength.js
@@ -0,0 +1,110 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetelementsbytagnamelength";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getElementsByTagName(tagName)" method returns a
+ NodeList of all the Elements with a given tagName.
+
+ Retrieve the entire DOM document and invoke its
+ "getElementsByTagName(tagName)" method with tagName
+ equal to "strong". The method should return a NodeList
+ that contains 5 elements.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094
+*/
+function hc_documentgetelementsbytagnamelength() {
+ var success;
+ if(checkInitialization(builder, "hc_documentgetelementsbytagnamelength") != null) return;
+ var doc;
+ var nameList;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ nameList = doc.getElementsByTagName("strong");
+ assertSize("documentGetElementsByTagNameLengthAssert",5,nameList);
+
+}
+
+
+
+
+function runTest() {
+ hc_documentgetelementsbytagnamelength();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength-expected.txt
new file mode 100644
index 0000000..177d660
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetelementsbytagnametotallength
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength.html b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength.html
new file mode 100644
index 0000000..08cb542
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentgetelementsbytagnametotallength.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength.js b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength.js
new file mode 100644
index 0000000..00fa119
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnametotallength.js
@@ -0,0 +1,221 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetelementsbytagnametotallength";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the entire DOM document and invoke its
+ "getElementsByTagName(tagName)" method with tagName
+ equal to "*". The method should return a NodeList
+ that contains all the elements of the document.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=251
+*/
+function hc_documentgetelementsbytagnametotallength() {
+ var success;
+ if(checkInitialization(builder, "hc_documentgetelementsbytagnametotallength") != null) return;
+ var doc;
+ var nameList;
+ expectedNames = new Array();
+ expectedNames[0] = "html";
+ expectedNames[1] = "head";
+ expectedNames[2] = "meta";
+ expectedNames[3] = "title";
+ expectedNames[4] = "script";
+ expectedNames[5] = "script";
+ expectedNames[6] = "script";
+ expectedNames[7] = "body";
+ expectedNames[8] = "p";
+ expectedNames[9] = "em";
+ expectedNames[10] = "strong";
+ expectedNames[11] = "code";
+ expectedNames[12] = "sup";
+ expectedNames[13] = "var";
+ expectedNames[14] = "acronym";
+ expectedNames[15] = "p";
+ expectedNames[16] = "em";
+ expectedNames[17] = "strong";
+ expectedNames[18] = "code";
+ expectedNames[19] = "sup";
+ expectedNames[20] = "var";
+ expectedNames[21] = "acronym";
+ expectedNames[22] = "p";
+ expectedNames[23] = "em";
+ expectedNames[24] = "strong";
+ expectedNames[25] = "code";
+ expectedNames[26] = "sup";
+ expectedNames[27] = "var";
+ expectedNames[28] = "acronym";
+ expectedNames[29] = "p";
+ expectedNames[30] = "em";
+ expectedNames[31] = "strong";
+ expectedNames[32] = "code";
+ expectedNames[33] = "sup";
+ expectedNames[34] = "var";
+ expectedNames[35] = "acronym";
+ expectedNames[36] = "p";
+ expectedNames[37] = "em";
+ expectedNames[38] = "strong";
+ expectedNames[39] = "code";
+ expectedNames[40] = "sup";
+ expectedNames[41] = "var";
+ expectedNames[42] = "acronym";
+
+ svgExpectedNames = new Array();
+ svgExpectedNames[0] = "svg";
+ svgExpectedNames[1] = "rect";
+ svgExpectedNames[2] = "script";
+ svgExpectedNames[3] = "head";
+ svgExpectedNames[4] = "meta";
+ svgExpectedNames[5] = "title";
+ svgExpectedNames[6] = "body";
+ svgExpectedNames[7] = "p";
+ svgExpectedNames[8] = "em";
+ svgExpectedNames[9] = "strong";
+ svgExpectedNames[10] = "code";
+ svgExpectedNames[11] = "sup";
+ svgExpectedNames[12] = "var";
+ svgExpectedNames[13] = "acronym";
+ svgExpectedNames[14] = "p";
+ svgExpectedNames[15] = "em";
+ svgExpectedNames[16] = "strong";
+ svgExpectedNames[17] = "code";
+ svgExpectedNames[18] = "sup";
+ svgExpectedNames[19] = "var";
+ svgExpectedNames[20] = "acronym";
+ svgExpectedNames[21] = "p";
+ svgExpectedNames[22] = "em";
+ svgExpectedNames[23] = "strong";
+ svgExpectedNames[24] = "code";
+ svgExpectedNames[25] = "sup";
+ svgExpectedNames[26] = "var";
+ svgExpectedNames[27] = "acronym";
+ svgExpectedNames[28] = "p";
+ svgExpectedNames[29] = "em";
+ svgExpectedNames[30] = "strong";
+ svgExpectedNames[31] = "code";
+ svgExpectedNames[32] = "sup";
+ svgExpectedNames[33] = "var";
+ svgExpectedNames[34] = "acronym";
+ svgExpectedNames[35] = "p";
+ svgExpectedNames[36] = "em";
+ svgExpectedNames[37] = "strong";
+ svgExpectedNames[38] = "code";
+ svgExpectedNames[39] = "sup";
+ svgExpectedNames[40] = "var";
+ svgExpectedNames[41] = "acronym";
+
+ var actualNames = new Array();
+
+ var thisElement;
+ var thisTag;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ nameList = doc.getElementsByTagName("*");
+ for(var indexN10148 = 0;indexN10148 < nameList.length; indexN10148++) {
+ thisElement = nameList.item(indexN10148);
+ thisTag = thisElement.tagName;
+
+ actualNames[actualNames.length] = thisTag;
+
+ }
+
+ if(
+
+ (builder.contentType == "image/svg+xml")
+
+ ) {
+ assertEqualsListAutoCase("element", "svgTagNames",svgExpectedNames,actualNames);
+
+ }
+
+ else {
+ assertEqualsListAutoCase("element", "tagNames",expectedNames,actualNames);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_documentgetelementsbytagnametotallength();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue-expected.txt
new file mode 100644
index 0000000..6d6f0f4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetelementsbytagnamevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue.html b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue.html
new file mode 100644
index 0000000..75beb59
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentgetelementsbytagnamevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue.js b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue.js
new file mode 100644
index 0000000..e9d39ed
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetelementsbytagnamevalue.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetelementsbytagnamevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getElementsByTagName(tagName)" method returns a
+ NodeList of all the Elements with a given tagName
+ in a pre-order traversal of the tree.
+
+ Retrieve the entire DOM document and invoke its
+ "getElementsByTagName(tagName)" method with tagName
+ equal to "strong". The method should return a NodeList
+ that contains 5 elements. The FOURTH item in the
+ list is retrieved and output.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-A6C9094
+*/
+function hc_documentgetelementsbytagnamevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_documentgetelementsbytagnamevalue") != null) return;
+ var doc;
+ var nameList;
+ var nameNode;
+ var firstChild;
+ var childValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ nameList = doc.getElementsByTagName("strong");
+ nameNode = nameList.item(3);
+ firstChild = nameNode.firstChild;
+
+ childValue = firstChild.nodeValue;
+
+ assertEquals("documentGetElementsByTagNameValueAssert","Jeny Oconnor",childValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_documentgetelementsbytagnamevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetimplementation-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentgetimplementation-expected.txt
new file mode 100644
index 0000000..ac97756
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetimplementation-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetimplementation
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetimplementation.html b/LayoutTests/dom/html/level1/core/hc_documentgetimplementation.html
new file mode 100644
index 0000000..1ca6bfc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetimplementation.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentgetimplementation.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetimplementation.js b/LayoutTests/dom/html/level1/core/hc_documentgetimplementation.js
new file mode 100644
index 0000000..5bb3f3b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetimplementation.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetimplementation";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the entire DOM document and invoke its
+ "getImplementation()" method. If contentType="text/html",
+ DOMImplementation.hasFeature("HTML","1.0") should be true.
+ Otherwise, DOMImplementation.hasFeature("XML", "1.0")
+ should be true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1B793EBA
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=245
+*/
+function hc_documentgetimplementation() {
+ var success;
+ if(checkInitialization(builder, "hc_documentgetimplementation") != null) return;
+ var doc;
+ var docImpl;
+ var xmlstate;
+ var htmlstate;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docImpl = doc.implementation;
+xmlstate = docImpl.hasFeature("XML","1.0");
+htmlstate = docImpl.hasFeature("HTML","1.0");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertTrue("supports_HTML_1.0",htmlstate);
+
+ }
+
+ else {
+ assertTrue("supports_XML_1.0",xmlstate);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_documentgetimplementation();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetrootnode-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentgetrootnode-expected.txt
new file mode 100644
index 0000000..d4e5ec8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetrootnode-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetrootnode
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetrootnode.html b/LayoutTests/dom/html/level1/core/hc_documentgetrootnode.html
new file mode 100644
index 0000000..a29fa60
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetrootnode.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentgetrootnode.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentgetrootnode.js b/LayoutTests/dom/html/level1/core/hc_documentgetrootnode.js
new file mode 100644
index 0000000..e221ff1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentgetrootnode.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentgetrootnode";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Load a document and invoke its
+ "getDocumentElement()" method.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-87CD092
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=251
+*/
+function hc_documentgetrootnode() {
+ var success;
+ if(checkInitialization(builder, "hc_documentgetrootnode") != null) return;
+ var doc;
+ var root;
+ var rootName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ root = doc.documentElement;
+
+ rootName = root.nodeName;
+
+
+ if(
+
+ (builder.contentType == "image/svg+xml")
+
+ ) {
+ assertEquals("svgTagName","svg",rootName);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "docElemName","html",rootName);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_documentgetrootnode();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute-expected.txt
new file mode 100644
index 0000000..3d8d095
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentinvalidcharacterexceptioncreateattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.html b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.html
new file mode 100644
index 0000000..d9b6965
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentinvalidcharacterexceptioncreateattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.js b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.js
new file mode 100644
index 0000000..9038f2e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentinvalidcharacterexceptioncreateattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "createAttribute(tagName)" method raises an
+ INVALID_CHARACTER_ERR DOMException if the specified
+ tagName contains an invalid character.
+
+ Retrieve the entire DOM document and invoke its
+ "createAttribute(tagName)" method with the tagName equal
+ to the string "invalid^Name". Due to the invalid
+ character the desired EXCEPTION should be raised.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1084891198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_documentinvalidcharacterexceptioncreateattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_documentinvalidcharacterexceptioncreateattribute") != null) return;
+ var doc;
+ var createdAttr;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ {
+ success = false;
+ try {
+ createdAttr = doc.createAttribute("invalid^Name");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_documentinvalidcharacterexceptioncreateattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1-expected.txt
new file mode 100644
index 0000000..b4408fc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.html b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.html
new file mode 100644
index 0000000..53d09db
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentinvalidcharacterexceptioncreateattribute1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.js b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.js
new file mode 100644
index 0000000..4f9933d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentinvalidcharacterexceptioncreateattribute1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Creating an attribute with an empty name should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1084891198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1084891198
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function hc_documentinvalidcharacterexceptioncreateattribute1() {
+ var success;
+ if(checkInitialization(builder, "hc_documentinvalidcharacterexceptioncreateattribute1") != null) return;
+ var doc;
+ var createdAttr;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ {
+ success = false;
+ try {
+ createdAttr = doc.createAttribute("");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_documentinvalidcharacterexceptioncreateattribute1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement-expected.txt
new file mode 100644
index 0000000..7e034f4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentinvalidcharacterexceptioncreateelement
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement.html b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement.html
new file mode 100644
index 0000000..0653e1b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentinvalidcharacterexceptioncreateelement.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement.js b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement.js
new file mode 100644
index 0000000..624a46a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentinvalidcharacterexceptioncreateelement";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "createElement(tagName)" method raises an
+ INVALID_CHARACTER_ERR DOMException if the specified
+ tagName contains an invalid character.
+
+ Retrieve the entire DOM document and invoke its
+ "createElement(tagName)" method with the tagName equal
+ to the string "invalid^Name". Due to the invalid
+ character the desired EXCEPTION should be raised.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-2141741547')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_documentinvalidcharacterexceptioncreateelement() {
+ var success;
+ if(checkInitialization(builder, "hc_documentinvalidcharacterexceptioncreateelement") != null) return;
+ var doc;
+ var badElement;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ {
+ success = false;
+ try {
+ badElement = doc.createElement("invalid^Name");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_documentinvalidcharacterexceptioncreateelement();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1-expected.txt b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1-expected.txt
new file mode 100644
index 0000000..879a299
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentinvalidcharacterexceptioncreateelement1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.html b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.html
new file mode 100644
index 0000000..13b043c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_documentinvalidcharacterexceptioncreateelement1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.js b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.js
new file mode 100644
index 0000000..cbf69fe
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_documentinvalidcharacterexceptioncreateelement1.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_documentinvalidcharacterexceptioncreateelement1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Creating an element with an empty name should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-2141741547')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-2141741547
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function hc_documentinvalidcharacterexceptioncreateelement1() {
+ var success;
+ if(checkInitialization(builder, "hc_documentinvalidcharacterexceptioncreateelement1") != null) return;
+ var doc;
+ var badElement;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ {
+ success = false;
+ try {
+ badElement = doc.createElement("");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_documentinvalidcharacterexceptioncreateelement1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion-expected.txt b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion-expected.txt
new file mode 100644
index 0000000..38c4cda
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_domimplementationfeaturenoversion
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion.html b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion.html
new file mode 100644
index 0000000..a856f51
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_domimplementationfeaturenoversion.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion.js b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion.js
new file mode 100644
index 0000000..f723ce5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenoversion.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_domimplementationfeaturenoversion";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Load a document and invoke its
+ "getImplementation()" method. This should create a
+ DOMImplementation object whose "hasFeature(feature,
+ version)" method is invoked with version equal to "".
+ If the version is not specified, supporting any version
+ feature will cause the method to return "true".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7
+* @see http://www.w3.org/2000/11/DOM-Level-2-errata#core-14
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=245
+*/
+function hc_domimplementationfeaturenoversion() {
+ var success;
+ if(checkInitialization(builder, "hc_domimplementationfeaturenoversion") != null) return;
+ var doc;
+ var domImpl;
+ var state;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ domImpl = doc.implementation;
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ state = domImpl.hasFeature("HTML","");
+
+ }
+
+ else {
+ state = domImpl.hasFeature("XML","");
+
+ }
+ assertTrue("hasFeatureBlank",state);
+
+}
+
+
+
+
+function runTest() {
+ hc_domimplementationfeaturenoversion();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull-expected.txt b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull-expected.txt
new file mode 100644
index 0000000..eb02e29
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_domimplementationfeaturenull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull.html b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull.html
new file mode 100644
index 0000000..ed2fd6b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_domimplementationfeaturenull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull.js b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull.js
new file mode 100644
index 0000000..bfa69f3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturenull.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_domimplementationfeaturenull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("hasNullString", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Load a document and invoke its
+ "getImplementation()" method. This should create a
+ DOMImplementation object whose "hasFeature(feature,
+ version)" method is invoked with version equal to null.
+ If the version is not specified, supporting any version
+ feature will cause the method to return "true".
+
+* @author Curt Arnold
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7
+* @see http://www.w3.org/2000/11/DOM-Level-2-errata#core-14
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=245
+*/
+function hc_domimplementationfeaturenull() {
+ var success;
+ if(checkInitialization(builder, "hc_domimplementationfeaturenull") != null) return;
+ var doc;
+ var domImpl;
+ var state;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ domImpl = doc.implementation;
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ state = domImpl.hasFeature("HTML",null);
+assertTrue("supports_HTML_null",state);
+
+ }
+
+ else {
+ state = domImpl.hasFeature("XML",null);
+assertTrue("supports_XML_null",state);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_domimplementationfeaturenull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml-expected.txt b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml-expected.txt
new file mode 100644
index 0000000..b0e5c43
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_domimplementationfeaturexml
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml.html b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml.html
new file mode 100644
index 0000000..e9e3fd9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_domimplementationfeaturexml.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml.js b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml.js
new file mode 100644
index 0000000..acd4d37
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_domimplementationfeaturexml.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_domimplementationfeaturexml";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the entire DOM document and invoke its
+ "getImplementation()" method. This should create a
+ DOMImplementation object whose "hasFeature(feature,
+ version)" method is invoked with "feature" equal to "html" or "xml".
+ The method should return a boolean "true".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=245
+*/
+function hc_domimplementationfeaturexml() {
+ var success;
+ if(checkInitialization(builder, "hc_domimplementationfeaturexml") != null) return;
+ var doc;
+ var domImpl;
+ var state;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ domImpl = doc.implementation;
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ state = domImpl.hasFeature("html","1.0");
+assertTrue("supports_html_1.0",state);
+
+ }
+
+ else {
+ state = domImpl.hasFeature("xml","1.0");
+assertTrue("supports_xml_1.0",state);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_domimplementationfeaturexml();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute-expected.txt
new file mode 100644
index 0000000..87707b3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementaddnewattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute.html b/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute.html
new file mode 100644
index 0000000..9052f8d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementaddnewattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute.js b/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute.js
new file mode 100644
index 0000000..90d483b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementaddnewattribute.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementaddnewattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setAttribute(name,value)" method adds a new attribute
+ to the Element
+
+ Retrieve the last child of the last employee, then
+ add an attribute to it by invoking the
+ "setAttribute(name,value)" method. It should create
+ a "strong" attribute with an assigned value equal to
+ "value".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_elementaddnewattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_elementaddnewattribute") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attrValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(4);
+ testEmployee.setAttribute("lang","EN-us");
+ attrValue = testEmployee.getAttribute("lang");
+ assertEquals("attrValue","EN-us",attrValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementaddnewattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute-expected.txt
new file mode 100644
index 0000000..12a2b07
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementassociatedattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute.html b/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute.html
new file mode 100644
index 0000000..62518ec
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementassociatedattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute.js b/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute.js
new file mode 100644
index 0000000..c3642a9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementassociatedattribute.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementassociatedattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the first attribute from the last child of
+ the first employee and invoke the "getSpecified()"
+ method. This test is only intended to show that
+ Elements can actually have attributes. This test uses
+ the "getNamedItem(name)" method from the NamedNodeMap
+ interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+*/
+function hc_elementassociatedattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_elementassociatedattribute") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attributes;
+ var domesticAttr;
+ var specified;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(0);
+ attributes = testEmployee.attributes;
+
+ domesticAttr = attributes.getNamedItem("title");
+ specified = domesticAttr.specified;
+
+ assertTrue("acronymTitleSpecified",specified);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementassociatedattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue-expected.txt
new file mode 100644
index 0000000..849fbd3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementchangeattributevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue.html b/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue.html
new file mode 100644
index 0000000..e61d422
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementchangeattributevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue.js b/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue.js
new file mode 100644
index 0000000..2777f22
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementchangeattributevalue.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementchangeattributevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setAttribute(name,value)" method adds a new attribute
+ to the Element. If the "strong" is already present, then
+ its value should be changed to the new one that is in
+ the "value" parameter.
+
+ Retrieve the last child of the fourth employee, then add
+ an attribute to it by invoking the
+ "setAttribute(name,value)" method. Since the name of the
+ used attribute("class") is already present in this
+ element, then its value should be changed to the new one
+ of the "value" parameter.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082
+*/
+function hc_elementchangeattributevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_elementchangeattributevalue") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attrValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(3);
+ testEmployee.setAttribute("class","Neither");
+ attrValue = testEmployee.getAttribute("class");
+ assertEquals("elementChangeAttributeValueAssert","Neither",attrValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementchangeattributevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute-expected.txt
new file mode 100644
index 0000000..8c83fcf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementcreatenewattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute.html b/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute.html
new file mode 100644
index 0000000..4b73eb2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementcreatenewattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute.js b/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute.js
new file mode 100644
index 0000000..aad9aa1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementcreatenewattribute.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementcreatenewattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setAttributeNode(newAttr)" method adds a new
+ attribute to the Element.
+
+ Retrieve first address element and add
+ a new attribute node to it by invoking its
+ "setAttributeNode(newAttr)" method. This test makes use
+ of the "createAttribute(name)" method from the Document
+ interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_elementcreatenewattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_elementcreatenewattribute") != null) return;
+ var doc;
+ var elementList;
+ var testAddress;
+ var newAttribute;
+ var oldAttr;
+ var districtAttr;
+ var attrVal;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(0);
+ newAttribute = doc.createAttribute("lang");
+ oldAttr = testAddress.setAttributeNode(newAttribute);
+ assertNull("old_attr_doesnt_exist",oldAttr);
+ districtAttr = testAddress.getAttributeNode("lang");
+ assertNotNull("new_district_accessible",districtAttr);
+attrVal = testAddress.getAttribute("lang");
+ assertEquals("attr_value","",attrVal);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementcreatenewattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetattributenode-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementgetattributenode-expected.txt
new file mode 100644
index 0000000..4e57f62
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetattributenode-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetattributenode
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetattributenode.html b/LayoutTests/dom/html/level1/core/hc_elementgetattributenode.html
new file mode 100644
index 0000000..ef3d318
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetattributenode.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementgetattributenode.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetattributenode.js b/LayoutTests/dom/html/level1/core/hc_elementgetattributenode.js
new file mode 100644
index 0000000..17b0106
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetattributenode.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetattributenode";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the attribute "title" from the last child
+ of the first "p" element and check its node name.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-217A91B8
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+*/
+function hc_elementgetattributenode() {
+ var success;
+ if(checkInitialization(builder, "hc_elementgetattributenode") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var domesticAttr;
+ var nodeName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(0);
+ domesticAttr = testEmployee.getAttributeNode("title");
+ nodeName = domesticAttr.nodeName;
+
+ assertEqualsAutoCase("attribute", "nodeName","title",nodeName);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementgetattributenode();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull-expected.txt
new file mode 100644
index 0000000..7189a8b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetattributenodenull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull.html b/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull.html
new file mode 100644
index 0000000..97b03a6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementgetattributenodenull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull.js b/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull.js
new file mode 100644
index 0000000..2c9a905
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetattributenodenull.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetattributenodenull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getAttributeNode(name)" method retrieves an
+ attribute node by name. It should return null if the
+ "strong" attribute does not exist.
+
+ Retrieve the last child of the first employee and attempt
+ to retrieve a non-existing attribute. The method should
+ return "null". The non-existing attribute to be used
+ is "invalidAttribute".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-217A91B8
+*/
+function hc_elementgetattributenodenull() {
+ var success;
+ if(checkInitialization(builder, "hc_elementgetattributenodenull") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var domesticAttr;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(0);
+ domesticAttr = testEmployee.getAttributeNode("invalidAttribute");
+ assertNull("elementGetAttributeNodeNullAssert",domesticAttr);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementgetattributenodenull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementempty-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementgetelementempty-expected.txt
new file mode 100644
index 0000000..fdcaa13
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementempty-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementempty
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementempty.html b/LayoutTests/dom/html/level1/core/hc_elementgetelementempty.html
new file mode 100644
index 0000000..008bb9b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementempty.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementgetelementempty.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementempty.js b/LayoutTests/dom/html/level1/core/hc_elementgetelementempty.js
new file mode 100644
index 0000000..b4ddf55
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementempty.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementempty";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getAttribute(name)" method returns an empty
+ string if no value was assigned to an attribute and
+ no default value was given in the DTD file.
+
+ Retrieve the last child of the last employee, then
+ invoke "getAttribute(name)" method, where "strong" is an
+ attribute without a specified or DTD default value.
+ The "getAttribute(name)" method should return the empty
+ string. This method makes use of the
+ "createAttribute(newAttr)" method from the Document
+ interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-666EE0F9
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_elementgetelementempty() {
+ var success;
+ if(checkInitialization(builder, "hc_elementgetelementempty") != null) return;
+ var doc;
+ var newAttribute;
+ var elementList;
+ var testEmployee;
+ var domesticAttr;
+ var attrValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newAttribute = doc.createAttribute("lang");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(3);
+ domesticAttr = testEmployee.setAttributeNode(newAttribute);
+ attrValue = testEmployee.getAttribute("lang");
+ assertEquals("elementGetElementEmptyAssert","",attrValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementgetelementempty();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname-expected.txt
new file mode 100644
index 0000000..2ed0f52
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementsbytagname
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname.html b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname.html
new file mode 100644
index 0000000..290cc01
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementgetelementsbytagname.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname.js b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname.js
new file mode 100644
index 0000000..bed6cfe
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagname.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementsbytagname";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getElementsByTagName(name)" method returns a list
+of all descendant Elements with the given tag name.
+Test for an empty list.
+
+Create a NodeList of all the descendant elements
+using the string "noMatch" as the tagName.
+The method should return a NodeList whose length is
+"0" since there are not any descendant elements
+that match the given tag name.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D
+*/
+function hc_elementgetelementsbytagname() {
+ var success;
+ if(checkInitialization(builder, "hc_elementgetelementsbytagname") != null) return;
+ var doc;
+ var elementList;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ assertSize("elementGetElementsByTagNameAssert",5,elementList);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementgetelementsbytagname();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist-expected.txt
new file mode 100644
index 0000000..7a1daa2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementsbytagnameaccessnodelist
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist.html b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist.html
new file mode 100644
index 0000000..d705501
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementgetelementsbytagnameaccessnodelist.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist.js b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist.js
new file mode 100644
index 0000000..cd53408
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnameaccessnodelist.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementsbytagnameaccessnodelist";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getElementsByTagName(name)" method returns a list
+of all descendant Elements in the order the children
+were encountered in a pre order traversal of the element
+tree.
+
+Create a NodeList of all the descendant elements
+using the string "p" as the tagName.
+The method should return a NodeList whose length is
+"5" in the order the children were encountered.
+Access the FOURTH element in the NodeList. The FOURTH
+element, the first or second should be an "em" node with
+the content "EMP0004".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_elementgetelementsbytagnameaccessnodelist() {
+ var success;
+ if(checkInitialization(builder, "hc_elementgetelementsbytagnameaccessnodelist") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var firstC;
+ var childName;
+ var nodeType;
+ var employeeIDNode;
+ var employeeID;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ testEmployee = elementList.item(3);
+ firstC = testEmployee.firstChild;
+
+ nodeType = firstC.nodeType;
+
+
+ while(
+ (3 == nodeType)
+ ) {
+ firstC = firstC.nextSibling;
+
+ nodeType = firstC.nodeType;
+
+
+ }
+childName = firstC.nodeName;
+
+ assertEqualsAutoCase("element", "childName","em",childName);
+ employeeIDNode = firstC.firstChild;
+
+ employeeID = employeeIDNode.nodeValue;
+
+ assertEquals("employeeID","EMP0004",employeeID);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementgetelementsbytagnameaccessnodelist();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch-expected.txt
new file mode 100644
index 0000000..b9eb065
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementsbytagnamenomatch
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch.html b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch.html
new file mode 100644
index 0000000..d513156
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementgetelementsbytagnamenomatch.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch.js b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch.js
new file mode 100644
index 0000000..941fd4a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamenomatch.js
@@ -0,0 +1,110 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementsbytagnamenomatch";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getElementsByTagName(name)" method returns a list
+of all descendant Elements with the given tag name.
+
+Create a NodeList of all the descendant elements
+using the string "employee" as the tagName.
+The method should return a NodeList whose length is
+"5".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D
+*/
+function hc_elementgetelementsbytagnamenomatch() {
+ var success;
+ if(checkInitialization(builder, "hc_elementgetelementsbytagnamenomatch") != null) return;
+ var doc;
+ var elementList;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("noMatch");
+ assertSize("elementGetElementsByTagNameNoMatchNoMatchAssert",0,elementList);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementgetelementsbytagnamenomatch();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue-expected.txt
new file mode 100644
index 0000000..6be0ef2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementsbytagnamespecialvalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue.html b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue.html
new file mode 100644
index 0000000..65a7504
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementgetelementsbytagnamespecialvalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue.js b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue.js
new file mode 100644
index 0000000..3b8c10d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgetelementsbytagnamespecialvalue.js
@@ -0,0 +1,134 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgetelementsbytagnamespecialvalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getElementsByTagName(name)" method may use the
+special value "*" to match all tags in the element
+tree.
+
+Create a NodeList of all the descendant elements
+of the last employee by using the special value "*".
+The method should return all the descendant children(6)
+in the order the children were encountered.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1938918D
+*/
+function hc_elementgetelementsbytagnamespecialvalue() {
+ var success;
+ if(checkInitialization(builder, "hc_elementgetelementsbytagnamespecialvalue") != null) return;
+ var doc;
+ var elementList;
+ var lastEmployee;
+ var lastempList;
+ var child;
+ var childName;
+ var result = new Array();
+
+ expectedResult = new Array();
+ expectedResult[0] = "em";
+ expectedResult[1] = "strong";
+ expectedResult[2] = "code";
+ expectedResult[3] = "sup";
+ expectedResult[4] = "var";
+ expectedResult[5] = "acronym";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ lastEmployee = elementList.item(4);
+ lastempList = lastEmployee.getElementsByTagName("*");
+ for(var indexN10067 = 0;indexN10067 < lastempList.length; indexN10067++) {
+ child = lastempList.item(indexN10067);
+ childName = child.nodeName;
+
+ result[result.length] = childName;
+
+ }
+ assertEqualsListAutoCase("element", "tagNames",expectedResult,result);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementgetelementsbytagnamespecialvalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgettagname-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementgettagname-expected.txt
new file mode 100644
index 0000000..fba9799
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgettagname-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgettagname
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgettagname.html b/LayoutTests/dom/html/level1/core/hc_elementgettagname.html
new file mode 100644
index 0000000..70c6c96
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgettagname.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementgettagname.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementgettagname.js b/LayoutTests/dom/html/level1/core/hc_elementgettagname.js
new file mode 100644
index 0000000..567d234
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementgettagname.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementgettagname";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Invoke the "getTagName()" method one the
+ root node. The value returned should be "html" or "svg".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-104682815
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=251
+*/
+function hc_elementgettagname() {
+ var success;
+ if(checkInitialization(builder, "hc_elementgettagname") != null) return;
+ var doc;
+ var root;
+ var tagname;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ root = doc.documentElement;
+
+ tagname = root.tagName;
+
+
+ if(
+
+ (builder.contentType == "image/svg+xml")
+
+ ) {
+ assertEquals("svgTagname","svg",tagname);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "tagname","html",tagname);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_elementgettagname();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr-expected.txt
new file mode 100644
index 0000000..0589641
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementinuseattributeerr
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr.html b/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr.html
new file mode 100644
index 0000000..a5bd5b3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementinuseattributeerr.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr.js b/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr.js
new file mode 100644
index 0000000..fa2fd0a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinuseattributeerr.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementinuseattributeerr";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setAttributeNode(newAttr)" method raises an
+ "INUSE_ATTRIBUTE_ERR DOMException if the "newAttr"
+ is already an attribute of another element.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-887236154')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=244
+*/
+function hc_elementinuseattributeerr() {
+ var success;
+ if(checkInitialization(builder, "hc_elementinuseattributeerr") != null) return;
+ var doc;
+ var newAttribute;
+ var addressElementList;
+ var testAddress;
+ var newElement;
+ var attrAddress;
+ var appendedChild;
+ var setAttr1;
+ var setAttr2;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressElementList = doc.getElementsByTagName("body");
+ testAddress = addressElementList.item(0);
+ newElement = doc.createElement("p");
+ appendedChild = testAddress.appendChild(newElement);
+ newAttribute = doc.createAttribute("title");
+ setAttr1 = newElement.setAttributeNode(newAttribute);
+
+ {
+ success = false;
+ try {
+ setAttr2 = testAddress.setAttributeNode(newAttribute);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 10);
+ }
+ assertTrue("throw_INUSE_ATTRIBUTE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_elementinuseattributeerr();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception-expected.txt
new file mode 100644
index 0000000..033994c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementinvalidcharacterexception
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception.html b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception.html
new file mode 100644
index 0000000..9e0d631
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementinvalidcharacterexception.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception.js b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception.js
new file mode 100644
index 0000000..4d581a3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementinvalidcharacterexception";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setAttribute(name,value)" method raises an
+ "INVALID_CHARACTER_ERR DOMException if the specified
+ name contains an invalid character.
+
+ Retrieve the last child of the first employee and
+ call its "setAttribute(name,value)" method with
+ "strong" containing an invalid character.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68F082')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_elementinvalidcharacterexception() {
+ var success;
+ if(checkInitialization(builder, "hc_elementinvalidcharacterexception") != null) return;
+ var doc;
+ var elementList;
+ var testAddress;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(0);
+
+ {
+ success = false;
+ try {
+ testAddress.setAttribute("invalid^Name","value");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_elementinvalidcharacterexception();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1-expected.txt
new file mode 100644
index 0000000..589147c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementinvalidcharacterexception1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1.html b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1.html
new file mode 100644
index 0000000..ed99859
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementinvalidcharacterexception1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1.js b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1.js
new file mode 100644
index 0000000..5376968
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementinvalidcharacterexception1.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementinvalidcharacterexception1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Calling Element.setAttribute with an empty name will cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68F082
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-F68F082')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function hc_elementinvalidcharacterexception1() {
+ var success;
+ if(checkInitialization(builder, "hc_elementinvalidcharacterexception1") != null) return;
+ var doc;
+ var elementList;
+ var testAddress;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(0);
+
+ {
+ success = false;
+ try {
+ testAddress.setAttribute("","value");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_elementinvalidcharacterexception1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnormalize-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementnormalize-expected.txt
new file mode 100644
index 0000000..489896f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnormalize-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementnormalize
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnormalize.html b/LayoutTests/dom/html/level1/core/hc_elementnormalize.html
new file mode 100644
index 0000000..7d41e93
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnormalize.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementnormalize.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnormalize.js b/LayoutTests/dom/html/level1/core/hc_elementnormalize.js
new file mode 100644
index 0000000..c00a5bc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnormalize.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementnormalize";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Append a couple of text nodes to the first sup element, normalize the
+document element and check that the element has been normalized.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162CF083
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=546
+*/
+function hc_elementnormalize() {
+ var success;
+ if(checkInitialization(builder, "hc_elementnormalize") != null) return;
+ var doc;
+ var root;
+ var elementList;
+ var testName;
+ var firstChild;
+ var childValue;
+ var textNode;
+ var retNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("sup");
+ testName = elementList.item(0);
+ textNode = doc.createTextNode("");
+ retNode = testName.appendChild(textNode);
+ textNode = doc.createTextNode(",000");
+ retNode = testName.appendChild(textNode);
+ root = doc.documentElement;
+
+ root.normalize();
+ elementList = doc.getElementsByTagName("sup");
+ testName = elementList.item(0);
+ firstChild = testName.firstChild;
+
+ childValue = firstChild.nodeValue;
+
+ assertEquals("elementNormalizeAssert","56,000,000",childValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementnormalize();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnormalize2-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementnormalize2-expected.txt
new file mode 100644
index 0000000..8c46839
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnormalize2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementnormalize2
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnormalize2.html b/LayoutTests/dom/html/level1/core/hc_elementnormalize2.html
new file mode 100644
index 0000000..c0ba6e7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnormalize2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementnormalize2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnormalize2.js b/LayoutTests/dom/html/level1/core/hc_elementnormalize2.js
new file mode 100644
index 0000000..b2197ed
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnormalize2.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementnormalize2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Add an empty text node to an existing attribute node, normalize the containing element
+and check that the attribute node has eliminated the empty text.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162CF083
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=482
+*/
+function hc_elementnormalize2() {
+ var success;
+ if(checkInitialization(builder, "hc_elementnormalize2") != null) return;
+ var doc;
+ var root;
+ var elementList;
+ var element;
+ var firstChild;
+ var secondChild;
+ var childValue;
+ var emptyText;
+ var attrNode;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ root = doc.documentElement;
+
+ emptyText = doc.createTextNode("");
+ elementList = root.getElementsByTagName("acronym");
+ element = elementList.item(0);
+ attrNode = element.getAttributeNode("title");
+ retval = attrNode.appendChild(emptyText);
+ element.normalize();
+ attrNode = element.getAttributeNode("title");
+ firstChild = attrNode.firstChild;
+
+ childValue = firstChild.nodeValue;
+
+ assertEquals("firstChild","Yes",childValue);
+ secondChild = firstChild.nextSibling;
+
+ assertNull("secondChildNull",secondChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementnormalize2();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnotfounderr-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementnotfounderr-expected.txt
new file mode 100644
index 0000000..b10c1ed
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnotfounderr-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementnotfounderr
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnotfounderr.html b/LayoutTests/dom/html/level1/core/hc_elementnotfounderr.html
new file mode 100644
index 0000000..f150b70
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnotfounderr.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementnotfounderr.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementnotfounderr.js b/LayoutTests/dom/html/level1/core/hc_elementnotfounderr.js
new file mode 100644
index 0000000..ad15587
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementnotfounderr.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementnotfounderr";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeAttributeNode(oldAttr)" method raises a
+ NOT_FOUND_ERR DOMException if the "oldAttr" attribute
+ is not an attribute of the element.
+
+ Retrieve the last employee and attempt to remove
+ a non existing attribute node. This should cause the
+ intended exception to be raised. This test makes use
+ of the "createAttribute(name)" method from the Document
+ interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-D589198')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_elementnotfounderr() {
+ var success;
+ if(checkInitialization(builder, "hc_elementnotfounderr") != null) return;
+ var doc;
+ var oldAttribute;
+ var addressElementList;
+ var testAddress;
+ var attrAddress;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressElementList = doc.getElementsByTagName("acronym");
+ testAddress = addressElementList.item(4);
+ oldAttribute = doc.createAttribute("title");
+
+ {
+ success = false;
+ try {
+ attrAddress = testAddress.removeAttributeNode(oldAttribute);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 8);
+ }
+ assertTrue("throw_NOT_FOUND_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_elementnotfounderr();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementremoveattribute-expected.txt
new file mode 100644
index 0000000..b269615
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattribute-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementremoveattribute
+Status: failure
+Detail: attrValue: assertEquals failed, actual null, expected .
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattribute.html b/LayoutTests/dom/html/level1/core/hc_elementremoveattribute.html
new file mode 100644
index 0000000..8e36e24
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementremoveattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattribute.js b/LayoutTests/dom/html/level1/core/hc_elementremoveattribute.js
new file mode 100644
index 0000000..81224e7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattribute.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementremoveattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeAttribute(name)" removes an attribute by name.
+ If the attribute has a default value, it is immediately
+ replaced. However, there is no default values in the HTML
+ compatible tests, so its value is "".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D6AC0F9
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html
+*/
+function hc_elementremoveattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_elementremoveattribute") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attrValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(3);
+ testEmployee.removeAttribute("class");
+ attrValue = testEmployee.getAttribute("class");
+ assertEquals("attrValue","",attrValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementremoveattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate-expected.txt
new file mode 100644
index 0000000..c4678d9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementremoveattributeaftercreate
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate.html b/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate.html
new file mode 100644
index 0000000..c77c47f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementremoveattributeaftercreate.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate.js b/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate.js
new file mode 100644
index 0000000..724a3e8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattributeaftercreate.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementremoveattributeaftercreate";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeAttributeNode(oldAttr)" method removes the
+ specified attribute.
+
+ Retrieve the last child of the third employee, add a
+ new "lang" attribute to it and then try to remove it.
+ To verify that the node was removed use the
+ "getNamedItem(name)" method from the NamedNodeMap
+ interface. It also uses the "getAttributes()" method
+ from the Node interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_elementremoveattributeaftercreate() {
+ var success;
+ if(checkInitialization(builder, "hc_elementremoveattributeaftercreate") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var newAttribute;
+ var attributes;
+ var districtAttr;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ newAttribute = doc.createAttribute("lang");
+ districtAttr = testEmployee.setAttributeNode(newAttribute);
+ districtAttr = testEmployee.removeAttributeNode(newAttribute);
+ attributes = testEmployee.attributes;
+
+ districtAttr = attributes.getNamedItem("lang");
+ assertNull("removed_item_null",districtAttr);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementremoveattributeaftercreate();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode-expected.txt
new file mode 100644
index 0000000..eba3d8a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementremoveattributenode
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode.html b/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode.html
new file mode 100644
index 0000000..ca1a3f2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementremoveattributenode.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode.js b/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode.js
new file mode 100644
index 0000000..58bf730
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementremoveattributenode.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementremoveattributenode";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeAttributeNode(oldAttr)" method returns the
+ node that was removed.
+
+ Retrieve the last child of the third employee and
+ remove its "class" Attr node. The method should
+ return the old attribute node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D589198
+*/
+function hc_elementremoveattributenode() {
+ var success;
+ if(checkInitialization(builder, "hc_elementremoveattributenode") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var streetAttr;
+ var removedAttr;
+ var removedValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ streetAttr = testEmployee.getAttributeNode("class");
+ removedAttr = testEmployee.removeAttributeNode(streetAttr);
+ assertNotNull("removedAttrNotNull",removedAttr);
+removedValue = removedAttr.value;
+
+ assertEquals("elementRemoveAttributeNodeAssert","No",removedValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementremoveattributenode();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself-expected.txt
new file mode 100644
index 0000000..dcea4ba
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementreplaceattributewithself
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself.html b/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself.html
new file mode 100644
index 0000000..6d84d65
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementreplaceattributewithself.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself.js b/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself.js
new file mode 100644
index 0000000..14b1f7d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceattributewithself.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementreplaceattributewithself";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+This test calls setAttributeNode to replace an attribute with itself.
+Since the node is not an attribute of another Element, it would
+be inappropriate to throw an INUSE_ATTRIBUTE_ERR.
+
+This test was derived from elementinuserattributeerr which
+inadvertanly made this test.
+
+* @author Curt Arnold
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154
+*/
+function hc_elementreplaceattributewithself() {
+ var success;
+ if(checkInitialization(builder, "hc_elementreplaceattributewithself") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var streetAttr;
+ var replacedAttr;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ streetAttr = testEmployee.getAttributeNode("class");
+ replacedAttr = testEmployee.setAttributeNode(streetAttr);
+ assertSame("replacedAttr",streetAttr,replacedAttr);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementreplaceattributewithself();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute-expected.txt
new file mode 100644
index 0000000..6cce615
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementreplaceexistingattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute.html b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute.html
new file mode 100644
index 0000000..bfd2ddd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementreplaceexistingattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute.js b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute.js
new file mode 100644
index 0000000..949ac3b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattribute.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementreplaceexistingattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setAttributeNode(newAttr)" method adds a new
+ attribute to the Element. If the "newAttr" Attr node is
+ already present in this element, it should replace the
+ existing one.
+
+ Retrieve the last child of the third employee and add a
+ new attribute node by invoking the "setAttributeNode(new
+ Attr)" method. The new attribute node to be added is
+ "class", which is already present in this element. The
+ method should replace the existing Attr node with the
+ new one. This test uses the "createAttribute(name)"
+ method from the Document interface.
+
+* @author Curt Arnold
+*/
+function hc_elementreplaceexistingattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_elementreplaceexistingattribute") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var newAttribute;
+ var strong;
+ var setAttr;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ newAttribute = doc.createAttribute("class");
+ setAttr = testEmployee.setAttributeNode(newAttribute);
+ strong = testEmployee.getAttribute("class");
+ assertEquals("replacedValue","",strong);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementreplaceexistingattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue-expected.txt
new file mode 100644
index 0000000..2f963f4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementreplaceexistingattributegevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue.html b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue.html
new file mode 100644
index 0000000..eb7e38a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementreplaceexistingattributegevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue.js b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue.js
new file mode 100644
index 0000000..0318918
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementreplaceexistingattributegevalue.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementreplaceexistingattributegevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+If the "setAttributeNode(newAttr)" method replaces an
+existing Attr node with the same name, then it should
+return the previously existing Attr node.
+
+Retrieve the last child of the third employee and add a
+new attribute node. The new attribute node is "class",
+which is already present in this Element. The method
+should return the existing Attr node(old "class" Attr).
+This test uses the "createAttribute(name)" method
+from the Document interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154
+*/
+function hc_elementreplaceexistingattributegevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_elementreplaceexistingattributegevalue") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var newAttribute;
+ var streetAttr;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ newAttribute = doc.createAttribute("class");
+ streetAttr = testEmployee.setAttributeNode(newAttribute);
+ assertNotNull("previousAttrNotNull",streetAttr);
+value = streetAttr.value;
+
+ assertEquals("previousAttrValue","No",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementreplaceexistingattributegevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes-expected.txt
new file mode 100644
index 0000000..e92f3d2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementretrieveallattributes
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes.html b/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes.html
new file mode 100644
index 0000000..58c5aff
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementretrieveallattributes.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes.js b/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes.js
new file mode 100644
index 0000000..56c79ba
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrieveallattributes.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementretrieveallattributes";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Create a list of all the attributes of the last child
+ of the first "p" element by using the "getAttributes()"
+ method.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=184
+*/
+function hc_elementretrieveallattributes() {
+ var success;
+ if(checkInitialization(builder, "hc_elementretrieveallattributes") != null) return;
+ var doc;
+ var addressList;
+ var testAddress;
+ var attributes;
+ var attribute;
+ var attributeName;
+ var actual = new Array();
+
+ htmlExpected = new Array();
+ htmlExpected[0] = "title";
+
+ expected = new Array();
+ expected[0] = "title";
+ expected[1] = "dir";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ addressList = doc.getElementsByTagName("acronym");
+ testAddress = addressList.item(0);
+ attributes = testAddress.attributes;
+
+ for(var indexN1006B = 0;indexN1006B < attributes.length; indexN1006B++) {
+ attribute = attributes.item(indexN1006B);
+ attributeName = attribute.nodeName;
+
+ actual[actual.length] = attributeName;
+
+ }
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertEqualsCollection("htmlAttributeNames",toLowerArray(htmlExpected),toLowerArray(actual));
+
+ }
+
+ else {
+ assertEqualsCollection("attributeNames",toLowerArray(expected),toLowerArray(actual));
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_elementretrieveallattributes();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue-expected.txt
new file mode 100644
index 0000000..e23b71f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementretrieveattrvalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue.html b/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue.html
new file mode 100644
index 0000000..303ce31
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementretrieveattrvalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue.js b/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue.js
new file mode 100644
index 0000000..288afcd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrieveattrvalue.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementretrieveattrvalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getAttribute(name)" method returns an attribute
+ value by name.
+
+ Retrieve the second address element, then
+ invoke the 'getAttribute("class")' method. This should
+ return the value of the attribute("No").
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-666EE0F9
+*/
+function hc_elementretrieveattrvalue() {
+ var success;
+ if(checkInitialization(builder, "hc_elementretrieveattrvalue") != null) return;
+ var doc;
+ var elementList;
+ var testAddress;
+ var attrValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(2);
+ attrValue = testAddress.getAttribute("class");
+ assertEquals("attrValue","No",attrValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementretrieveattrvalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrievetagname-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementretrievetagname-expected.txt
new file mode 100644
index 0000000..2373403
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrievetagname-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementretrievetagname
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrievetagname.html b/LayoutTests/dom/html/level1/core/hc_elementretrievetagname.html
new file mode 100644
index 0000000..3469257
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrievetagname.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementretrievetagname.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementretrievetagname.js b/LayoutTests/dom/html/level1/core/hc_elementretrievetagname.js
new file mode 100644
index 0000000..9208b54
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementretrievetagname.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementretrievetagname";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getElementsByTagName()" method returns a NodeList
+ of all descendant elements with a given tagName.
+
+ Invoke the "getElementsByTagName()" method and create
+ a NodeList of "code" elements. Retrieve the second
+ "code" element in the list and return the NodeName.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-104682815
+*/
+function hc_elementretrievetagname() {
+ var success;
+ if(checkInitialization(builder, "hc_elementretrievetagname") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var strong;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("code");
+ testEmployee = elementList.item(1);
+ strong = testEmployee.nodeName;
+
+ assertEqualsAutoCase("element", "nodename","code",strong);
+ strong = testEmployee.tagName;
+
+ assertEqualsAutoCase("element", "tagname","code",strong);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementretrievetagname();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull-expected.txt
new file mode 100644
index 0000000..4c4b5ec
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementsetattributenodenull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull.html b/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull.html
new file mode 100644
index 0000000..8b4e9bc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementsetattributenodenull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull.js b/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull.js
new file mode 100644
index 0000000..65db9d7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementsetattributenodenull.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementsetattributenodenull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setAttributeNode(newAttr)" method returns the
+ null value if no previously existing Attr node with the
+ same name was replaced.
+
+ Retrieve the last child of the third employee and add a
+ new attribute to it. The new attribute node added is
+ "lang", which is not part of this Element. The
+ method should return the null value.
+ This test uses the "createAttribute(name)"
+ method from the Document interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_elementsetattributenodenull() {
+ var success;
+ if(checkInitialization(builder, "hc_elementsetattributenodenull") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var newAttribute;
+ var districtAttr;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ newAttribute = doc.createAttribute("lang");
+ districtAttr = testEmployee.setAttributeNode(newAttribute);
+ assertNull("elementSetAttributeNodeNullAssert",districtAttr);
+
+}
+
+
+
+
+function runTest() {
+ hc_elementsetattributenodenull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr-expected.txt b/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr-expected.txt
new file mode 100644
index 0000000..7b6e36d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementwrongdocumenterr
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr.html b/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr.html
new file mode 100644
index 0000000..7c16e78
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_elementwrongdocumenterr.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr.js b/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr.js
new file mode 100644
index 0000000..e17340c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_elementwrongdocumenterr.js
@@ -0,0 +1,147 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_elementwrongdocumenterr";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ docsLoaded += preload(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ docsLoaded += preload(doc2Ref, "doc2", "hc_staff");
+
+ if (docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setAttributeNode(newAttr)" method raises an
+ "WRONG_DOCUMENT_ERR DOMException if the "newAttr"
+ was created from a different document than the one that
+ created this document.
+
+ Retrieve the last employee and attempt to set a new
+ attribute node for its "employee" element. The new
+ attribute was created from a document other than the
+ one that created this element, therefore a
+ WRONG_DOCUMENT_ERR DOMException should be raised.
+
+ This test uses the "createAttribute(newAttr)" method
+ from the Document interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-887236154
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-887236154')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_elementwrongdocumenterr() {
+ var success;
+ if(checkInitialization(builder, "hc_elementwrongdocumenterr") != null) return;
+ var doc1;
+ var doc2;
+ var newAttribute;
+ var addressElementList;
+ var testAddress;
+ var attrAddress;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ doc1 = load(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ doc2 = load(doc2Ref, "doc2", "hc_staff");
+ newAttribute = doc2.createAttribute("newAttribute");
+ addressElementList = doc1.getElementsByTagName("acronym");
+ testAddress = addressElementList.item(4);
+
+ {
+ success = false;
+ try {
+ attrAddress = testAddress.setAttributeNode(newAttribute);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 4);
+ }
+ assertTrue("throw_WRONG_DOCUMENT_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_elementwrongdocumenterr();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1-expected.txt b/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1-expected.txt
new file mode 100644
index 0000000..7a3b1fd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_entitiesremovenameditem1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1.html b/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1.html
new file mode 100644
index 0000000..b609cd3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_entitiesremovenameditem1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1.js b/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1.js
new file mode 100644
index 0000000..54ca9ff
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_entitiesremovenameditem1.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_entitiesremovenameditem1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An attempt to add remove an entity should result in a NO_MODIFICATION_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1788794630
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193
+*/
+function hc_entitiesremovenameditem1() {
+ var success;
+ if(checkInitialization(builder, "hc_entitiesremovenameditem1") != null) return;
+ var doc;
+ var entities;
+ var docType;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+entities = docType.entities;
+
+ assertNotNull("entitiesNotNull",entities);
+
+ {
+ success = false;
+ try {
+ retval = entities.removeNamedItem("alpha");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 7);
+ }
+ assertTrue("throw_NO_MODIFICATION_ALLOWED_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_entitiesremovenameditem1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1-expected.txt b/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1-expected.txt
new file mode 100644
index 0000000..4116982
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_entitiessetnameditem1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1.html b/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1.html
new file mode 100644
index 0000000..a83fff8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_entitiessetnameditem1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1.js b/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1.js
new file mode 100644
index 0000000..17876c0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_entitiessetnameditem1.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_entitiessetnameditem1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An attempt to add an element to the named node map returned by entities should
+result in a NO_MODIFICATION_ERR or HIERARCHY_REQUEST_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1788794630
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+*/
+function hc_entitiessetnameditem1() {
+ var success;
+ if(checkInitialization(builder, "hc_entitiessetnameditem1") != null) return;
+ var doc;
+ var entities;
+ var docType;
+ var retval;
+ var elem;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+entities = docType.entities;
+
+ assertNotNull("entitiesNotNull",entities);
+elem = doc.createElement("br");
+
+ try {
+ retval = entities.setNamedItem(elem);
+ fail("throw_HIER_OR_NO_MOD_ERR");
+
+ } catch (ex) {
+ if (typeof(ex.code) != 'undefined') {
+ switch(ex.code) {
+ case /* HIERARCHY_REQUEST_ERR */ 3 :
+ break;
+ case /* NO_MODIFICATION_ALLOWED_ERR */ 7 :
+ break;
+ default:
+ throw ex;
+ }
+ } else {
+ throw ex;
+ }
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_entitiessetnameditem1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange-expected.txt
new file mode 100644
index 0000000..ac7e53f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapchildnoderange
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange.html b/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange.html
new file mode 100644
index 0000000..11e7409
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapchildnoderange.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange.js b/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange.js
new file mode 100644
index 0000000..d70da8d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapchildnoderange.js
@@ -0,0 +1,141 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapchildnoderange";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third "p" element and traverse the
+ list from index 0 thru length -1. All indices should
+ be valid.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D0FB19E
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=250
+*/
+function hc_namednodemapchildnoderange() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapchildnoderange") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attributes;
+ var child;
+ var strong;
+ var length;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ attributes = testEmployee.attributes;
+
+ length = attributes.length;
+
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertEquals("htmlLength",2,length);
+
+ }
+
+ else {
+ assertEquals("length",3,length);
+ child = attributes.item(2);
+ assertNotNull("attr2",child);
+
+ }
+ child = attributes.item(0);
+ assertNotNull("attr0",child);
+child = attributes.item(1);
+ assertNotNull("attr1",child);
+child = attributes.item(3);
+ assertNull("attr3",child);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapchildnoderange();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem-expected.txt
new file mode 100644
index 0000000..5757180
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapgetnameditem
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem.html b/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem.html
new file mode 100644
index 0000000..f91b260
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapgetnameditem.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem.js b/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem.js
new file mode 100644
index 0000000..3fa01c4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapgetnameditem.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapgetnameditem";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the second "p" element and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="title". This should result
+ in the title Attr node being returned.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+*/
+function hc_namednodemapgetnameditem() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapgetnameditem") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attributes;
+ var domesticAttr;
+ var attrName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(1);
+ attributes = testEmployee.attributes;
+
+ domesticAttr = attributes.getNamedItem("title");
+ attrName = domesticAttr.nodeName;
+
+ assertEqualsAutoCase("attribute", "nodeName","title",attrName);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapgetnameditem();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr-expected.txt
new file mode 100644
index 0000000..266ca30
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapinuseattributeerr
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr.html b/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr.html
new file mode 100644
index 0000000..822b814
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapinuseattributeerr.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr.js b/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr.js
new file mode 100644
index 0000000..fdf0c15
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapinuseattributeerr.js
@@ -0,0 +1,139 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapinuseattributeerr";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "setNamedItem(arg)" method raises a
+INUSE_ATTRIBUTE_ERR DOMException if "arg" is an
+Attr that is already in an attribute of another Element.
+
+Create a NamedNodeMap object from the attributes of the
+last child of the third employee and attempt to add
+an attribute that is already being used by the first
+employee. This should raise the desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1025163788')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_namednodemapinuseattributeerr() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapinuseattributeerr") != null) return;
+ var doc;
+ var elementList;
+ var firstNode;
+ var testNode;
+ var attributes;
+ var domesticAttr;
+ var setAttr;
+ var setNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ firstNode = elementList.item(0);
+ domesticAttr = doc.createAttribute("title");
+ domesticAttr.value = "Yα";
+
+ setAttr = firstNode.setAttributeNode(domesticAttr);
+ elementList = doc.getElementsByTagName("acronym");
+ testNode = elementList.item(2);
+ attributes = testNode.attributes;
+
+
+ {
+ success = false;
+ try {
+ setNode = attributes.setNamedItem(domesticAttr);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 10);
+ }
+ assertTrue("throw_INUSE_ATTRIBUTE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapinuseattributeerr();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr-expected.txt
new file mode 100644
index 0000000..d8e5762
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapnotfounderr
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr.html b/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr.html
new file mode 100644
index 0000000..617ef6f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapnotfounderr.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr.js b/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr.js
new file mode 100644
index 0000000..67467c3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapnotfounderr.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapnotfounderr";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeNamedItem(name)" method raises a
+ NOT_FOUND_ERR DOMException if there is not a node
+ named "strong" in the map.
+
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third employee and attempt to remove
+ the "lang" attribute. There is not a node named
+ "lang" in the list and therefore the desired
+ exception should be raised.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INUSE_ATTRIBUTE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-D58B193')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INUSE_ATTRIBUTE_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_namednodemapnotfounderr() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapnotfounderr") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attributes;
+ var removedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ attributes = testEmployee.attributes;
+
+
+ {
+ success = false;
+ try {
+ removedNode = attributes.removeNamedItem("lang");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 8);
+ }
+ assertTrue("throw_NOT_FOUND_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapnotfounderr();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes-expected.txt
new file mode 100644
index 0000000..5697c32
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapnumberofnodes
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes.html b/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes.html
new file mode 100644
index 0000000..6a9a08a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapnumberofnodes.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes.js b/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes.js
new file mode 100644
index 0000000..b703b21
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapnumberofnodes.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapnumberofnodes";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the second "p" element and evaluate Node.attributes.length.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6D0FB19E
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=250
+*/
+function hc_namednodemapnumberofnodes() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapnumberofnodes") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attributes;
+ var length;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(2);
+ attributes = testEmployee.attributes;
+
+ length = attributes.length;
+
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertEquals("htmlLength",2,length);
+
+ }
+
+ else {
+ assertEquals("length",3,length);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapnumberofnodes();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem-expected.txt
new file mode 100644
index 0000000..d94949c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapremovenameditem
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem.html b/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem.html
new file mode 100644
index 0000000..4bb6589
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapremovenameditem.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem.js b/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem.js
new file mode 100644
index 0000000..1370fa9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapremovenameditem.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapremovenameditem";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeNamedItem(name)" method removes a node
+ specified by name.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object of the attributes of the last child. Once the
+ list is created invoke the "removeNamedItem(name)"
+ method with name="class". This should result
+ in the removal of the specified attribute.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2002Mar/0002.html
+*/
+function hc_namednodemapremovenameditem() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapremovenameditem") != null) return;
+ var doc;
+ var elementList;
+ var newAttribute;
+ var testAddress;
+ var attributes;
+ var streetAttr;
+ var specified;
+ var removedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(2);
+ attributes = testAddress.attributes;
+
+ removedNode = attributes.removeNamedItem("class");
+ streetAttr = attributes.getNamedItem("class");
+ assertNull("isnull",streetAttr);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapremovenameditem();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode-expected.txt
new file mode 100644
index 0000000..137818e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapreturnattrnode
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode.html b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode.html
new file mode 100644
index 0000000..51d1636
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapreturnattrnode.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode.js b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode.js
new file mode 100644
index 0000000..bfb396b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnattrnode.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapreturnattrnode";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the second p element and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="class". This should result
+ in the method returning an Attr node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1112119403
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+*/
+function hc_namednodemapreturnattrnode() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapreturnattrnode") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attributes;
+ var streetAttr;
+ var attrName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(1);
+ attributes = testEmployee.attributes;
+
+ streetAttr = attributes.getNamedItem("class");
+ assertInstanceOf("typeAssert","Attr",streetAttr);
+attrName = streetAttr.nodeName;
+
+ assertEqualsAutoCase("attribute", "nodeName","class",attrName);
+ attrName = streetAttr.name;
+
+ assertEqualsAutoCase("attribute", "name","class",attrName);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapreturnattrnode();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem-expected.txt
new file mode 100644
index 0000000..93e3a80
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapreturnfirstitem
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem.html b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem.html
new file mode 100644
index 0000000..6a26469
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapreturnfirstitem.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem.js b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem.js
new file mode 100644
index 0000000..9b17c3f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnfirstitem.js
@@ -0,0 +1,150 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapreturnfirstitem";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "item(index)" method returns the indexth item in
+ the map(test for first item).
+
+ Retrieve the second "acronym" get the NamedNodeMap of the attributes. Since the
+ DOM does not specify an order of these nodes the contents
+ of the FIRST node can contain either "title", "class" or "dir".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=184
+*/
+function hc_namednodemapreturnfirstitem() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapreturnfirstitem") != null) return;
+ var doc;
+ var elementList;
+ var testAddress;
+ var attributes;
+ var child;
+ var nodeName;
+ htmlExpected = new Array();
+ htmlExpected[0] = "title";
+ htmlExpected[1] = "class";
+
+ expected = new Array();
+ expected[0] = "title";
+ expected[1] = "class";
+ expected[2] = "dir";
+
+ var actual = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(1);
+ attributes = testAddress.attributes;
+
+ for(var indexN10070 = 0;indexN10070 < attributes.length; indexN10070++) {
+ child = attributes.item(indexN10070);
+ nodeName = child.nodeName;
+
+ actual[actual.length] = nodeName;
+
+ }
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertEqualsCollection("attrName_html",toLowerArray(htmlExpected),toLowerArray(actual));
+
+ }
+
+ else {
+ assertEqualsCollection("attrName",expected,actual);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapreturnfirstitem();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem-expected.txt
new file mode 100644
index 0000000..1f9b0a1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapreturnlastitem
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem.html b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem.html
new file mode 100644
index 0000000..199d202
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapreturnlastitem.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem.js b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem.js
new file mode 100644
index 0000000..90422c8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnlastitem.js
@@ -0,0 +1,152 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapreturnlastitem";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "item(index)" method returns the indexth item in
+ the map(test for last item).
+
+ Retrieve the second "acronym" and get the attribute name. Since the
+ DOM does not specify an order of these nodes the contents
+ of the LAST node can contain either "title" or "class".
+ The test should return "true" if the LAST node is either
+ of these values.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=184
+*/
+function hc_namednodemapreturnlastitem() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapreturnlastitem") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attributes;
+ var child;
+ var nodeName;
+ htmlExpected = new Array();
+ htmlExpected[0] = "title";
+ htmlExpected[1] = "class";
+
+ expected = new Array();
+ expected[0] = "title";
+ expected[1] = "class";
+ expected[2] = "dir";
+
+ var actual = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(1);
+ attributes = testEmployee.attributes;
+
+ for(var indexN10070 = 0;indexN10070 < attributes.length; indexN10070++) {
+ child = attributes.item(indexN10070);
+ nodeName = child.nodeName;
+
+ actual[actual.length] = nodeName;
+
+ }
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertEqualsCollection("attrName_html",toLowerArray(htmlExpected),toLowerArray(actual));
+
+ }
+
+ else {
+ assertEqualsCollection("attrName",expected,actual);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapreturnlastitem();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull-expected.txt
new file mode 100644
index 0000000..3483ffc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapreturnnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull.html b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull.html
new file mode 100644
index 0000000..27cefc7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapreturnnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull.js b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull.js
new file mode 100644
index 0000000..04cb17e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapreturnnull.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapreturnnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getNamedItem(name)" method returns null of the
+ specified name did not identify any node in the map.
+
+ Retrieve the second employee and create a NamedNodeMap
+ listing of the attributes of the last child. Once the
+ list is created an invocation of the "getNamedItem(name)"
+ method is done with name="lang". This name does not
+ match any names in the list therefore the method should
+ return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1074577549
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_namednodemapreturnnull() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapreturnnull") != null) return;
+ var doc;
+ var elementList;
+ var testEmployee;
+ var attributes;
+ var districtNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testEmployee = elementList.item(1);
+ attributes = testEmployee.attributes;
+
+ districtNode = attributes.getNamedItem("lang");
+ assertNull("langAttrNull",districtNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapreturnnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem-expected.txt
new file mode 100644
index 0000000..f55d77a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapsetnameditem
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem.html b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem.html
new file mode 100644
index 0000000..690efef
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapsetnameditem.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem.js b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem.js
new file mode 100644
index 0000000..ffba08a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditem.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapsetnameditem";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the second "p" element and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created. The "setNamedItem(arg)"
+ method should add then new node to the NamedNodeItem
+ object by using its "nodeName" attribute("lang').
+ This node is then retrieved using the "getNamedItem(name)"
+ method.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_namednodemapsetnameditem() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapsetnameditem") != null) return;
+ var doc;
+ var elementList;
+ var newAttribute;
+ var testAddress;
+ var attributes;
+ var districtNode;
+ var attrName;
+ var setNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(1);
+ newAttribute = doc.createAttribute("lang");
+ attributes = testAddress.attributes;
+
+ setNode = attributes.setNamedItem(newAttribute);
+ districtNode = attributes.getNamedItem("lang");
+ attrName = districtNode.nodeName;
+
+ assertEqualsAutoCase("attribute", "nodeName","lang",attrName);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapsetnameditem();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue-expected.txt
new file mode 100644
index 0000000..a7f45f2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapsetnameditemreturnvalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue.html b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue.html
new file mode 100644
index 0000000..85c52b8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapsetnameditemreturnvalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue.js b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue.js
new file mode 100644
index 0000000..0d82c40
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemreturnvalue.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapsetnameditemreturnvalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the "setNamedItem(arg)" method replaces an already
+ existing node with the same name then the already
+ existing node is returned.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should replace the already existing node with
+ the new one and return the existing node.
+ This test uses the "createAttribute(name)" method from
+ the document interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+*/
+function hc_namednodemapsetnameditemreturnvalue() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapsetnameditemreturnvalue") != null) return;
+ var doc;
+ var elementList;
+ var newAttribute;
+ var testAddress;
+ var attributes;
+ var newNode;
+ var attrValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(2);
+ newAttribute = doc.createAttribute("class");
+ attributes = testAddress.attributes;
+
+ newNode = attributes.setNamedItem(newAttribute);
+ assertNotNull("previousAttrNotNull",newNode);
+attrValue = newNode.nodeValue;
+
+ assertEquals("previousAttrValue","No",attrValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapsetnameditemreturnvalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists-expected.txt
new file mode 100644
index 0000000..55e2f86
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapsetnameditemthatexists
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists.html b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists.html
new file mode 100644
index 0000000..e022169
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapsetnameditemthatexists.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists.js b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists.js
new file mode 100644
index 0000000..7ba88c4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemthatexists.js
@@ -0,0 +1,134 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapsetnameditemthatexists";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the node to be added by the "setNamedItem(arg)" method
+ already exists in the NamedNodeMap, it is replaced by
+ the new one.
+
+ Retrieve the second employee and create a NamedNodeMap
+ object from the attributes of the last child by
+ invoking the "getAttributes()" method. Once the
+ list is created an invocation of the "setNamedItem(arg)"
+ method is done with arg=newAttr, where newAttr is a
+ new Attr Node previously created and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should replace the already existing node with
+ the new one.
+ This node is then retrieved using the "getNamedItem(name)"
+ method. This test uses the "createAttribute(name)"
+ method from the document interface
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+*/
+function hc_namednodemapsetnameditemthatexists() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapsetnameditemthatexists") != null) return;
+ var doc;
+ var elementList;
+ var newAttribute;
+ var testAddress;
+ var attributes;
+ var districtNode;
+ var attrValue;
+ var setNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(1);
+ newAttribute = doc.createAttribute("class");
+ attributes = testAddress.attributes;
+
+ setNode = attributes.setNamedItem(newAttribute);
+ districtNode = attributes.getNamedItem("class");
+ attrValue = districtNode.nodeValue;
+
+ assertEquals("namednodemapSetNamedItemThatExistsAssert","",attrValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapsetnameditemthatexists();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue-expected.txt
new file mode 100644
index 0000000..2b389c3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapsetnameditemwithnewvalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue.html b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue.html
new file mode 100644
index 0000000..d58cb17
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapsetnameditemwithnewvalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue.js b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue.js
new file mode 100644
index 0000000..0ecee32
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapsetnameditemwithnewvalue.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapsetnameditemwithnewvalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the "setNamedItem(arg)" method does not replace an
+ existing node with the same name then it returns null.
+
+ Retrieve the third employee and create a NamedNodeMap
+ object from the attributes of the last child.
+ Once the list is created the "setNamedItem(arg)" method
+ is invoked with arg=newAttr, where newAttr is a
+ newly created Attr Node and whose node name
+ already exists in the map. The "setNamedItem(arg)"
+ method should add the new node and return null.
+ This test uses the "createAttribute(name)" method from
+ the document interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-349467F9
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=243
+*/
+function hc_namednodemapsetnameditemwithnewvalue() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapsetnameditemwithnewvalue") != null) return;
+ var doc;
+ var elementList;
+ var newAttribute;
+ var testAddress;
+ var attributes;
+ var newNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddress = elementList.item(2);
+ newAttribute = doc.createAttribute("lang");
+ attributes = testAddress.attributes;
+
+ newNode = attributes.setNamedItem(newAttribute);
+ assertNull("prevValueNull",newNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapsetnameditemwithnewvalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr-expected.txt b/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr-expected.txt
new file mode 100644
index 0000000..63a88c9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapwrongdocumenterr
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr.html b/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr.html
new file mode 100644
index 0000000..d9aafbc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapwrongdocumenterr.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr.js b/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr.js
new file mode 100644
index 0000000..bde21e4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_namednodemapwrongdocumenterr.js
@@ -0,0 +1,149 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_namednodemapwrongdocumenterr";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ docsLoaded += preload(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ docsLoaded += preload(doc2Ref, "doc2", "hc_staff");
+
+ if (docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "setNamedItem(arg)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if "arg" was created
+ from a different document than the one that created
+ the NamedNodeMap.
+
+ Create a NamedNodeMap object from the attributes of the
+ last child of the third employee and attempt to add
+ another Attr node to it that was created from a
+ different DOM document. This should raise the desired
+ exception. This method uses the "createAttribute(name)"
+ method from the Document interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1025163788')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_namednodemapwrongdocumenterr() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapwrongdocumenterr") != null) return;
+ var doc1;
+ var doc2;
+ var elementList;
+ var testAddress;
+ var attributes;
+ var newAttribute;
+ var strong;
+ var setNode;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ doc1 = load(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ doc2 = load(doc2Ref, "doc2", "hc_staff");
+ elementList = doc1.getElementsByTagName("acronym");
+ testAddress = elementList.item(2);
+ newAttribute = doc2.createAttribute("newAttribute");
+ attributes = testAddress.attributes;
+
+
+ {
+ success = false;
+ try {
+ setNode = attributes.setNamedItem(newAttribute);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 4);
+ }
+ assertTrue("throw_WRONG_DOCUMENT_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapwrongdocumenterr();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchild-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeappendchild-expected.txt
new file mode 100644
index 0000000..fc8635b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchild-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchild
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchild.html b/LayoutTests/dom/html/level1/core/hc_nodeappendchild.html
new file mode 100644
index 0000000..26bc398
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchild.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeappendchild.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchild.js b/LayoutTests/dom/html/level1/core/hc_nodeappendchild.js
new file mode 100644
index 0000000..0da5325
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchild.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchild";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the second "p" and append a "br" Element
+ node to the list of children. The last node in the list
+ is then retrieved and its NodeName examined. The
+ "getNodeName()" method should return "br".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeappendchild() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeappendchild") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var createdNode;
+ var lchild;
+ var childName;
+ var appendedChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ createdNode = doc.createElement("br");
+ appendedChild = employeeNode.appendChild(createdNode);
+ lchild = employeeNode.lastChild;
+
+ childName = lchild.nodeName;
+
+ assertEqualsAutoCase("element", "nodeName","br",childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeappendchild();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists-expected.txt
new file mode 100644
index 0000000..d813871
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildchildexists
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists.html b/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists.html
new file mode 100644
index 0000000..4ad85de
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeappendchildchildexists.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists.js b/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists.js
new file mode 100644
index 0000000..2c95d9f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildchildexists.js
@@ -0,0 +1,160 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildchildexists";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the "newChild" is already in the tree, it is first
+ removed before the new one is appended.
+
+ Retrieve the "em" second employee and
+ append the first child to the end of the list. After
+ the "appendChild(newChild)" method is invoked the first
+ child should be the one that was second and the last
+ child should be the one that was first.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodeappendchildchildexists() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeappendchildchildexists") != null) return;
+ var doc;
+ var elementList;
+ var childList;
+ var childNode;
+ var newChild;
+ var memberNode;
+ var memberName;
+ var refreshedActual = new Array();
+
+ var actual = new Array();
+
+ var nodeType;
+ expected = new Array();
+ expected[0] = "strong";
+ expected[1] = "code";
+ expected[2] = "sup";
+ expected[3] = "var";
+ expected[4] = "acronym";
+ expected[5] = "em";
+
+ var appendedChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ childNode = elementList.item(1);
+ childList = childNode.getElementsByTagName("*");
+ newChild = childList.item(0);
+ appendedChild = childNode.appendChild(newChild);
+ for(var indexN10085 = 0;indexN10085 < childList.length; indexN10085++) {
+ memberNode = childList.item(indexN10085);
+ memberName = memberNode.nodeName;
+
+ actual[actual.length] = memberName;
+
+ }
+ assertEqualsListAutoCase("element", "liveByTagName",expected,actual);
+ childList = childNode.childNodes;
+
+ for(var indexN1009C = 0;indexN1009C < childList.length; indexN1009C++) {
+ memberNode = childList.item(indexN1009C);
+ nodeType = memberNode.nodeType;
+
+
+ if(
+ (1 == nodeType)
+ ) {
+ memberName = memberNode.nodeName;
+
+ refreshedActual[refreshedActual.length] = memberName;
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "refreshedChildNodes",expected,refreshedActual);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeappendchildchildexists();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment-expected.txt
new file mode 100644
index 0000000..a9ea1c8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchilddocfragment
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment.html b/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment.html
new file mode 100644
index 0000000..775926b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeappendchilddocfragment.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment.js b/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment.js
new file mode 100644
index 0000000..f1b95ea
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchilddocfragment.js
@@ -0,0 +1,158 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchilddocfragment";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the "newChild" is a DocumentFragment object then
+ all its content is added to the child list of this node.
+
+ Create and populate a new DocumentFragment object and
+ append it to the second employee. After the
+ "appendChild(newChild)" method is invoked retrieve the
+ new nodes at the end of the list, they should be the
+ two Element nodes from the DocumentFragment.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeappendchilddocfragment() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeappendchilddocfragment") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var newdocFragment;
+ var newChild1;
+ var newChild2;
+ var child;
+ var childName;
+ var result = new Array();
+
+ var appendedChild;
+ var nodeType;
+ expected = new Array();
+ expected[0] = "em";
+ expected[1] = "strong";
+ expected[2] = "code";
+ expected[3] = "sup";
+ expected[4] = "var";
+ expected[5] = "acronym";
+ expected[6] = "br";
+ expected[7] = "b";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ newdocFragment = doc.createDocumentFragment();
+ newChild1 = doc.createElement("br");
+ newChild2 = doc.createElement("b");
+ appendedChild = newdocFragment.appendChild(newChild1);
+ appendedChild = newdocFragment.appendChild(newChild2);
+ appendedChild = employeeNode.appendChild(newdocFragment);
+ for(var indexN100A2 = 0;indexN100A2 < childList.length; indexN100A2++) {
+ child = childList.item(indexN100A2);
+ nodeType = child.nodeType;
+
+
+ if(
+ (1 == nodeType)
+ ) {
+ childName = child.nodeName;
+
+ result[result.length] = childName;
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "nodeNames",expected,result);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeappendchilddocfragment();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename-expected.txt
new file mode 100644
index 0000000..23c738c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildgetnodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename.html b/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename.html
new file mode 100644
index 0000000..1afdd25
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeappendchildgetnodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename.js b/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename.js
new file mode 100644
index 0000000..f7499c5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildgetnodename.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildgetnodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "appendChild(newChild)" method returns the node
+ added.
+
+ Append a newly created node to the child list of the
+ second employee and check the NodeName returned. The
+ "getNodeName()" method should return "br".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeappendchildgetnodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeappendchildgetnodename") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var newChild;
+ var appendNode;
+ var childName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ newChild = doc.createElement("br");
+ appendNode = employeeNode.appendChild(newChild);
+ childName = appendNode.nodeName;
+
+ assertEqualsAutoCase("element", "nodeName","br",childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeappendchildgetnodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype-expected.txt
new file mode 100644
index 0000000..4673ad8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildinvalidnodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype.html b/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype.html
new file mode 100644
index 0000000..14b8da5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeappendchildinvalidnodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype.js b/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype.js
new file mode 100644
index 0000000..854d1c3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildinvalidnodetype.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildinvalidnodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "appendChild(newChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to append a newly
+ created Attr node. An Element node cannot have children
+ of the "Attr" type, therefore the desired exception
+ should be raised.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_nodeappendchildinvalidnodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeappendchildinvalidnodetype") != null) return;
+ var doc;
+ var rootNode;
+ var newChild;
+ var appendedChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ rootNode = doc.documentElement;
+
+ newChild = doc.createAttribute("newAttribute");
+
+ {
+ success = false;
+ try {
+ appendedChild = rootNode.appendChild(newChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeappendchildinvalidnodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument-expected.txt
new file mode 100644
index 0000000..bf9947e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildnewchilddiffdocument
+Status: failure
+Detail: throw_WRONG_DOCUMENT_ERR: assertTrue failed
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument.html b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument.html
new file mode 100644
index 0000000..c9a7413
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeappendchildnewchilddiffdocument.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument.js b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument.js
new file mode 100644
index 0000000..1be650b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnewchilddiffdocument.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildnewchilddiffdocument";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ docsLoaded += preload(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ docsLoaded += preload(doc2Ref, "doc2", "hc_staff");
+
+ if (docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "appendChild(newChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to append
+ a node created from a different document. An attempt
+ to make such a replacement should raise the desired
+ exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeappendchildnewchilddiffdocument() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeappendchildnewchilddiffdocument") != null) return;
+ var doc1;
+ var doc2;
+ var newChild;
+ var elementList;
+ var elementNode;
+ var appendedChild;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ doc1 = load(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ doc2 = load(doc2Ref, "doc2", "hc_staff");
+ newChild = doc1.createElement("br");
+ elementList = doc2.getElementsByTagName("p");
+ elementNode = elementList.item(1);
+
+ {
+ success = false;
+ try {
+ appendedChild = elementNode.appendChild(newChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 4);
+ }
+ assertTrue("throw_WRONG_DOCUMENT_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeappendchildnewchilddiffdocument();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor-expected.txt
new file mode 100644
index 0000000..7dda946
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildnodeancestor
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor.html b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor.html
new file mode 100644
index 0000000..2253ea6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeappendchildnodeancestor.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor.js b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor.js
new file mode 100644
index 0000000..a8ba817
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeappendchildnodeancestor.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeappendchildnodeancestor";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "appendChild(newChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to
+ append is one of this node's ancestors.
+
+ Retrieve the second employee and attempt to append
+ an ancestor node(root node) to it.
+ An attempt to make such an addition should raise the
+ desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-184E7107')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+*/
+function hc_nodeappendchildnodeancestor() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeappendchildnodeancestor") != null) return;
+ var doc;
+ var newChild;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var oldChild;
+ var appendedChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newChild = doc.documentElement;
+
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+
+ {
+ success = false;
+ try {
+ appendedChild = employeeNode.appendChild(newChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeappendchildnodeancestor();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute-expected.txt
new file mode 100644
index 0000000..190ee42
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeattributenodeattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute.html b/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute.html
new file mode 100644
index 0000000..c1320ef
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeattributenodeattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute.js b/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute.js
new file mode 100644
index 0000000..e8443db
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodeattribute.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeattributenodeattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getAttributes()" method invoked on an Attribute
+Node returns null.
+
+Retrieve the first attribute from the last child of the
+first employee and invoke the "getAttributes()" method
+on the Attribute Node. It should return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-637646024
+*/
+function hc_nodeattributenodeattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeattributenodeattribute") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var addrAttr;
+ var attrNode;
+ var attrList;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(0);
+ addrAttr = testAddr.attributes;
+
+ attrNode = addrAttr.item(0);
+ attrList = attrNode.attributes;
+
+ assertNull("nodeAttributeNodeAttributeAssert1",attrList);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeattributenodeattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeattributenodename-expected.txt
new file mode 100644
index 0000000..a174ce6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeattributenodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodename.html b/LayoutTests/dom/html/level1/core/hc_nodeattributenodename.html
new file mode 100644
index 0000000..7f6246c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeattributenodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodename.js b/LayoutTests/dom/html/level1/core/hc_nodeattributenodename.js
new file mode 100644
index 0000000..20b8e71
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodename.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeattributenodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the Attribute named "title" from the last
+ child of the first p element and check the string returned
+ by the "getNodeName()" method. It should be equal to
+ "title".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+*/
+function hc_nodeattributenodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeattributenodename") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var addrAttr;
+ var attrName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(0);
+ addrAttr = testAddr.getAttributeNode("title");
+ attrName = addrAttr.nodeName;
+
+ assertEqualsAutoCase("attribute", "nodeName","title",attrName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeattributenodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype-expected.txt
new file mode 100644
index 0000000..50b0e7c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeattributenodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype.html b/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype.html
new file mode 100644
index 0000000..1551ef8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeattributenodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype.js b/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype.js
new file mode 100644
index 0000000..41d7f10
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodetype.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeattributenodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ The "getNodeType()" method for an Attribute Node
+
+ returns the constant value 2.
+
+
+
+ Retrieve the first attribute from the last child of
+
+ the first employee and invoke the "getNodeType()"
+
+ method. The method should return 2.
+
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558
+*/
+function hc_nodeattributenodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeattributenodetype") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var addrAttr;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(0);
+ addrAttr = testAddr.getAttributeNode("title");
+ nodeType = addrAttr.nodeType;
+
+ assertEquals("nodeAttrNodeTypeAssert1",2,nodeType);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeattributenodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue-expected.txt
new file mode 100644
index 0000000..d50bf03
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeattributenodevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue.html b/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue.html
new file mode 100644
index 0000000..c54cb3f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeattributenodevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue.js b/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue.js
new file mode 100644
index 0000000..679a9dd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeattributenodevalue.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeattributenodevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ The string returned by the "getNodeValue()" method for an
+ Attribute Node is the value of the Attribute.
+
+ Retrieve the Attribute named "title" from the last
+ child of the first "p" and check the string returned
+ by the "getNodeValue()" method. It should be equal to
+ "Yes".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+*/
+function hc_nodeattributenodevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeattributenodevalue") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var addrAttr;
+ var attrValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(0);
+ addrAttr = testAddr.getAttributeNode("title");
+ attrValue = addrAttr.nodeValue;
+
+ assertEquals("nodeValue","Yes",attrValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeattributenodevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodes-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodechildnodes-expected.txt
new file mode 100644
index 0000000..dbbb22d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodes-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodechildnodes
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodes.html b/LayoutTests/dom/html/level1/core/hc_nodechildnodes.html
new file mode 100644
index 0000000..3b0dd93
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodes.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodechildnodes.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodes.js b/LayoutTests/dom/html/level1/core/hc_nodechildnodes.js
new file mode 100644
index 0000000..855ec35
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodes.js
@@ -0,0 +1,149 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodechildnodes";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ The "getChildNodes()" method returns a NodeList
+ that contains all children of this node.
+
+ Retrieve the second employee and check the NodeList
+ returned by the "getChildNodes()" method. The
+ length of the list should be 13.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodechildnodes() {
+ var success;
+ if(checkInitialization(builder, "hc_nodechildnodes") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childNode;
+ var childNodes;
+ var nodeType;
+ var childName;
+ var actual = new Array();
+
+ expected = new Array();
+ expected[0] = "em";
+ expected[1] = "strong";
+ expected[2] = "code";
+ expected[3] = "sup";
+ expected[4] = "var";
+ expected[5] = "acronym";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childNodes = employeeNode.childNodes;
+
+ for(var indexN1006C = 0;indexN1006C < childNodes.length; indexN1006C++) {
+ childNode = childNodes.item(indexN1006C);
+ nodeType = childNode.nodeType;
+
+ childName = childNode.nodeName;
+
+
+ if(
+ (1 == nodeType)
+ ) {
+ actual[actual.length] = childName;
+
+ }
+
+ else {
+ assertEquals("textNodeType",3,nodeType);
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "elementNames",expected,actual);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodechildnodes();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild-expected.txt
new file mode 100644
index 0000000..a792f31
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodechildnodesappendchild
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild.html b/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild.html
new file mode 100644
index 0000000..bc69c6a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodechildnodesappendchild.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild.js b/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild.js
new file mode 100644
index 0000000..a262e24
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodesappendchild.js
@@ -0,0 +1,159 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodechildnodesappendchild";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The NodeList returned by the "getChildNodes()" method
+ is live. Changes on the node's children are immediately
+ reflected on the nodes returned in the NodeList.
+
+ Create a NodeList of the children of the second employee
+ and then add a newly created element that was created
+ by the "createElement()" method(Document Interface) to
+ the second employee by using the "appendChild()" method.
+ The length of the NodeList should reflect this new
+ addition to the child list. It should return the value 14.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-184E7107
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodechildnodesappendchild() {
+ var success;
+ if(checkInitialization(builder, "hc_nodechildnodesappendchild") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var createdNode;
+ var childNode;
+ var childName;
+ var childType;
+ var textNode;
+ var actual = new Array();
+
+ expected = new Array();
+ expected[0] = "em";
+ expected[1] = "strong";
+ expected[2] = "code";
+ expected[3] = "sup";
+ expected[4] = "var";
+ expected[5] = "acronym";
+ expected[6] = "br";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ createdNode = doc.createElement("br");
+ employeeNode = employeeNode.appendChild(createdNode);
+ for(var indexN10087 = 0;indexN10087 < childList.length; indexN10087++) {
+ childNode = childList.item(indexN10087);
+ childName = childNode.nodeName;
+
+ childType = childNode.nodeType;
+
+
+ if(
+ (1 == childType)
+ ) {
+ actual[actual.length] = childName;
+
+ }
+
+ else {
+ assertEquals("textNodeType",3,childType);
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "childElements",expected,actual);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodechildnodesappendchild();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty-expected.txt
new file mode 100644
index 0000000..7d7be7b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodechildnodesempty
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty.html b/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty.html
new file mode 100644
index 0000000..b721fda
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodechildnodesempty.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty.js b/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty.js
new file mode 100644
index 0000000..612307c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodechildnodesempty.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodechildnodesempty";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getChildNodes()" method returns a NodeList
+ that contains all children of this node. If there
+ are not any children, this is a NodeList that does not
+ contain any nodes.
+
+ Retrieve the character data of the second "em" node and
+ invoke the "getChildNodes()" method. The
+ NodeList returned should not have any nodes.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodechildnodesempty() {
+ var success;
+ if(checkInitialization(builder, "hc_nodechildnodesempty") != null) return;
+ var doc;
+ var elementList;
+ var childList;
+ var employeeNode;
+ var textNode;
+ var length;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("em");
+ employeeNode = elementList.item(1);
+ textNode = employeeNode.firstChild;
+
+ childList = textNode.childNodes;
+
+ length = childList.length;
+
+ assertEquals("length_zero",0,length);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodechildnodesempty();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied-expected.txt
new file mode 100644
index 0000000..6bff5de
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecloneattributescopied
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied.html b/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied.html
new file mode 100644
index 0000000..7543344
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodecloneattributescopied.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied.js b/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied.js
new file mode 100644
index 0000000..d753c4b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecloneattributescopied.js
@@ -0,0 +1,149 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecloneattributescopied";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the second acronym element and invoke
+ the cloneNode method. The
+ duplicate node returned by the method should copy the
+ attributes associated with this node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=184
+*/
+function hc_nodecloneattributescopied() {
+ var success;
+ if(checkInitialization(builder, "hc_nodecloneattributescopied") != null) return;
+ var doc;
+ var elementList;
+ var addressNode;
+ var clonedNode;
+ var attributes;
+ var attributeNode;
+ var attributeName;
+ var result = new Array();
+
+ htmlExpected = new Array();
+ htmlExpected[0] = "class";
+ htmlExpected[1] = "title";
+
+ expected = new Array();
+ expected[0] = "class";
+ expected[1] = "title";
+ expected[2] = "dir";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ addressNode = elementList.item(1);
+ clonedNode = addressNode.cloneNode(false);
+ attributes = clonedNode.attributes;
+
+ for(var indexN10076 = 0;indexN10076 < attributes.length; indexN10076++) {
+ attributeNode = attributes.item(indexN10076);
+ attributeName = attributeNode.nodeName;
+
+ result[result.length] = attributeName;
+
+ }
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertEqualsCollection("nodeNames_html",toLowerArray(htmlExpected),toLowerArray(result));
+
+ }
+
+ else {
+ assertEqualsCollection("nodeNames",expected,result);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodecloneattributescopied();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext-expected.txt
new file mode 100644
index 0000000..0ad515f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonefalsenocopytext
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext.html b/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext.html
new file mode 100644
index 0000000..4ad78fc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeclonefalsenocopytext.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext.js b/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext.js
new file mode 100644
index 0000000..8d41464
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonefalsenocopytext.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonefalsenocopytext";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "cloneNode(deep)" method does not copy text unless it
+ is deep cloned.(Test for deep=false)
+
+ Retrieve the fourth child of the second employee and
+ the "cloneNode(deep)" method with deep=false. The
+ duplicate node returned by the method should not copy
+ any text data contained in this node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4
+*/
+function hc_nodeclonefalsenocopytext() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeclonefalsenocopytext") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var childNode;
+ var clonedNode;
+ var lastChildNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ childNode = childList.item(3);
+ clonedNode = childNode.cloneNode(false);
+ lastChildNode = clonedNode.lastChild;
+
+ assertNull("nodeCloneFalseNoCopyTextAssert1",lastChildNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeclonefalsenocopytext();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull-expected.txt
new file mode 100644
index 0000000..8ef68da
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonegetparentnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull.html b/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull.html
new file mode 100644
index 0000000..885373d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeclonegetparentnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull.js b/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull.js
new file mode 100644
index 0000000..ab52c8a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonegetparentnull.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonegetparentnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The duplicate node returned by the "cloneNode(deep)"
+ method does not have a ParentNode.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=false. The
+ duplicate node returned should return null when the
+ "getParentNode()" is invoked.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4
+*/
+function hc_nodeclonegetparentnull() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeclonegetparentnull") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var clonedNode;
+ var parentNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ clonedNode = employeeNode.cloneNode(false);
+ parentNode = clonedNode.parentNode;
+
+ assertNull("nodeCloneGetParentNullAssert1",parentNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeclonegetparentnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse-expected.txt
new file mode 100644
index 0000000..4f13cce
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonenodefalse
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse.html b/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse.html
new file mode 100644
index 0000000..a445e54
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeclonenodefalse.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse.js b/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse.js
new file mode 100644
index 0000000..7d48edf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonenodefalse.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonenodefalse";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "cloneNode(deep)" method returns a copy of the node
+ only if deep=false.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=false. The
+ method should only clone this node. The NodeName and
+ length of the NodeList are checked. The "getNodeName()"
+ method should return "employee" and the "getLength()"
+ method should return 0.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4
+*/
+function hc_nodeclonenodefalse() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeclonenodefalse") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var clonedNode;
+ var cloneName;
+ var cloneChildren;
+ var length;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ clonedNode = employeeNode.cloneNode(false);
+ cloneName = clonedNode.nodeName;
+
+ assertEqualsAutoCase("element", "strong","p",cloneName);
+ cloneChildren = clonedNode.childNodes;
+
+ length = cloneChildren.length;
+
+ assertEquals("length",0,length);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeclonenodefalse();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue-expected.txt
new file mode 100644
index 0000000..f501b19
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonenodetrue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue.html b/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue.html
new file mode 100644
index 0000000..8964aff
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeclonenodetrue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue.js b/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue.js
new file mode 100644
index 0000000..5eba8cd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonenodetrue.js
@@ -0,0 +1,145 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonenodetrue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "cloneNode(deep)" method returns a copy of the node
+ and the subtree under it if deep=true.
+
+ Retrieve the second employee and invoke the
+ "cloneNode(deep)" method with deep=true. The
+ method should clone this node and the subtree under it.
+ The NodeName of each child in the returned node is
+ checked to insure the entire subtree under the second
+ employee was cloned.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodeclonenodetrue() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeclonenodetrue") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var clonedNode;
+ var clonedList;
+ var clonedChild;
+ var clonedChildName;
+ var origList;
+ var origChild;
+ var origChildName;
+ var result = new Array();
+
+ var expected = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ origList = employeeNode.childNodes;
+
+ for(var indexN10065 = 0;indexN10065 < origList.length; indexN10065++) {
+ origChild = origList.item(indexN10065);
+ origChildName = origChild.nodeName;
+
+ expected[expected.length] = origChildName;
+
+ }
+ clonedNode = employeeNode.cloneNode(true);
+ clonedList = clonedNode.childNodes;
+
+ for(var indexN1007B = 0;indexN1007B < clonedList.length; indexN1007B++) {
+ clonedChild = clonedList.item(indexN1007B);
+ clonedChildName = clonedChild.nodeName;
+
+ result[result.length] = clonedChildName;
+
+ }
+ assertEqualsList("clone",expected,result);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeclonenodetrue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext-expected.txt
new file mode 100644
index 0000000..45446d1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonetruecopytext
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext.html b/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext.html
new file mode 100644
index 0000000..53404f0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeclonetruecopytext.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext.js b/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext.js
new file mode 100644
index 0000000..c12370b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeclonetruecopytext.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeclonetruecopytext";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "cloneNode(deep)" method does not copy text unless it
+ is deep cloned.(Test for deep=true)
+
+ Retrieve the eighth child of the second employee and
+ the "cloneNode(deep)" method with deep=true. The
+ duplicate node returned by the method should copy
+ any text data contained in this node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-3A0ED0A4
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodeclonetruecopytext() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeclonetruecopytext") != null) return;
+ var doc;
+ var elementList;
+ var childNode;
+ var clonedNode;
+ var lastChildNode;
+ var childValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("sup");
+ childNode = elementList.item(1);
+ clonedNode = childNode.cloneNode(true);
+ lastChildNode = clonedNode.lastChild;
+
+ childValue = lastChildNode.nodeValue;
+
+ assertEquals("cloneContainsText","35,000",childValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeclonetruecopytext();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes-expected.txt
new file mode 100644
index 0000000..6b34ee0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecommentnodeattributes
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes.html b/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes.html
new file mode 100644
index 0000000..4237302
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodecommentnodeattributes.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes.js b/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes.js
new file mode 100644
index 0000000..7e3e2e9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodeattributes.js
@@ -0,0 +1,135 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecommentnodeattributes";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getAttributes()" method invoked on a Comment
+ Node returns null.
+
+ Find any comment that is an immediate child of the root
+ and assert that Node.attributes is null. Then create
+ a new comment node (in case they had been omitted) and
+ make the assertion.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=248
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=263
+*/
+function hc_nodecommentnodeattributes() {
+ var success;
+ if(checkInitialization(builder, "hc_nodecommentnodeattributes") != null) return;
+ var doc;
+ var commentNode;
+ var nodeList;
+ var attrList;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ nodeList = doc.childNodes;
+
+ for(var indexN10043 = 0;indexN10043 < nodeList.length; indexN10043++) {
+ commentNode = nodeList.item(indexN10043);
+ nodeType = commentNode.nodeType;
+
+
+ if(
+ (8 == nodeType)
+ ) {
+ attrList = commentNode.attributes;
+
+ assertNull("existingCommentAttributesNull",attrList);
+
+ }
+
+ }
+ commentNode = doc.createComment("This is a comment");
+ attrList = commentNode.attributes;
+
+ assertNull("createdCommentAttributesNull",attrList);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodecommentnodeattributes();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodecommentnodename-expected.txt
new file mode 100644
index 0000000..f2cb340
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecommentnodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodename.html b/LayoutTests/dom/html/level1/core/hc_nodecommentnodename.html
new file mode 100644
index 0000000..ee05182
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodecommentnodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodename.js b/LayoutTests/dom/html/level1/core/hc_nodecommentnodename.js
new file mode 100644
index 0000000..de7013a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodename.js
@@ -0,0 +1,134 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecommentnodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeName()" method for a
+ Comment Node is "#comment".
+
+ Retrieve the Comment node in the XML file
+ and check the string returned by the "getNodeName()"
+ method. It should be equal to "#comment".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=248
+*/
+function hc_nodecommentnodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodecommentnodename") != null) return;
+ var doc;
+ var elementList;
+ var commentNode;
+ var nodeType;
+ var commentName;
+ var commentNodeName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.childNodes;
+
+ for(var indexN10044 = 0;indexN10044 < elementList.length; indexN10044++) {
+ commentNode = elementList.item(indexN10044);
+ nodeType = commentNode.nodeType;
+
+
+ if(
+ (8 == nodeType)
+ ) {
+ commentNodeName = commentNode.nodeName;
+
+ assertEquals("existingNodeName","#comment",commentNodeName);
+
+ }
+
+ }
+ commentNode = doc.createComment("This is a comment");
+ commentNodeName = commentNode.nodeName;
+
+ assertEquals("createdNodeName","#comment",commentNodeName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodecommentnodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype-expected.txt
new file mode 100644
index 0000000..cca3a71
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecommentnodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype.html b/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype.html
new file mode 100644
index 0000000..ae52053
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodecommentnodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype.js b/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype.js
new file mode 100644
index 0000000..168b918
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodetype.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecommentnodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getNodeType()" method for a Comment Node
+ returns the constant value 8.
+
+ Retrieve the nodes from the document and check for
+ a comment node and invoke the "getNodeType()" method. This should
+ return 8.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=248
+*/
+function hc_nodecommentnodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodecommentnodetype") != null) return;
+ var doc;
+ var testList;
+ var commentNode;
+ var commentNodeName;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ testList = doc.childNodes;
+
+ for(var indexN10040 = 0;indexN10040 < testList.length; indexN10040++) {
+ commentNode = testList.item(indexN10040);
+ commentNodeName = commentNode.nodeName;
+
+
+ if(
+ ("#comment" == commentNodeName)
+ ) {
+ nodeType = commentNode.nodeType;
+
+ assertEquals("existingCommentNodeType",8,nodeType);
+
+ }
+
+ }
+ commentNode = doc.createComment("This is a comment");
+ nodeType = commentNode.nodeType;
+
+ assertEquals("createdCommentNodeType",8,nodeType);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodecommentnodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue-expected.txt
new file mode 100644
index 0000000..f70ff88
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecommentnodevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue.html b/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue.html
new file mode 100644
index 0000000..03e8bbe
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodecommentnodevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue.js b/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue.js
new file mode 100644
index 0000000..64e35b2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodecommentnodevalue.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodecommentnodevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeValue()" method for a
+ Comment Node is the content of the comment.
+
+ Retrieve the comment in the XML file and
+ check the string returned by the "getNodeValue()" method.
+ It should be equal to "This is comment number 1".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=248
+*/
+function hc_nodecommentnodevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_nodecommentnodevalue") != null) return;
+ var doc;
+ var elementList;
+ var commentNode;
+ var commentName;
+ var commentValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.childNodes;
+
+ for(var indexN10040 = 0;indexN10040 < elementList.length; indexN10040++) {
+ commentNode = elementList.item(indexN10040);
+ commentName = commentNode.nodeName;
+
+
+ if(
+ ("#comment" == commentName)
+ ) {
+ commentValue = commentNode.nodeValue;
+
+ assertEquals("value"," This is comment number 1.",commentValue);
+
+ }
+
+ }
+ commentNode = doc.createComment(" This is a comment");
+ commentValue = commentNode.nodeValue;
+
+ assertEquals("createdCommentNodeValue"," This is a comment",commentValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodecommentnodevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename-expected.txt
new file mode 100644
index 0000000..df8afe5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentfragmentnodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename.html b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename.html
new file mode 100644
index 0000000..7df2d79
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentfragmentnodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename.js b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename.js
new file mode 100644
index 0000000..4c3b8f2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodename.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentfragmentnodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeName()" method for a
+ DocumentFragment Node is "#document-frament".
+
+ Retrieve the DOM document and invoke the
+ "createDocumentFragment()" method and check the string
+ returned by the "getNodeName()" method. It should be
+ equal to "#document-fragment".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3
+*/
+function hc_nodedocumentfragmentnodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentfragmentnodename") != null) return;
+ var doc;
+ var docFragment;
+ var documentFragmentName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docFragment = doc.createDocumentFragment();
+ documentFragmentName = docFragment.nodeName;
+
+ assertEquals("nodeDocumentFragmentNodeNameAssert1","#document-fragment",documentFragmentName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentfragmentnodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype-expected.txt
new file mode 100644
index 0000000..ea7c75e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentfragmentnodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype.html b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype.html
new file mode 100644
index 0000000..7760a09
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentfragmentnodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype.js b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype.js
new file mode 100644
index 0000000..404dcd4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodetype.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentfragmentnodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getNodeType()" method for a DocumentFragment Node
+ returns the constant value 11.
+
+ Invoke the "createDocumentFragment()" method and
+ examine the NodeType of the document fragment
+ returned by the "getNodeType()" method. The method
+ should return 11.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3
+*/
+function hc_nodedocumentfragmentnodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentfragmentnodetype") != null) return;
+ var doc;
+ var documentFragmentNode;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ documentFragmentNode = doc.createDocumentFragment();
+ nodeType = documentFragmentNode.nodeType;
+
+ assertEquals("nodeDocumentFragmentNodeTypeAssert1",11,nodeType);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentfragmentnodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue-expected.txt
new file mode 100644
index 0000000..ff2870d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentfragmentnodevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue.html b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue.html
new file mode 100644
index 0000000..59f3c89
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentfragmentnodevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue.js b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue.js
new file mode 100644
index 0000000..3817faf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentfragmentnodevalue.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentfragmentnodevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeValue()" method for a
+ DocumentFragment Node is null.
+
+ Retrieve the DOM document and invoke the
+ "createDocumentFragment()" method and check the string
+ returned by the "getNodeValue()" method. It should be
+ equal to null.
+
+* @author Curt Arnold
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+*/
+function hc_nodedocumentfragmentnodevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentfragmentnodevalue") != null) return;
+ var doc;
+ var docFragment;
+ var attrList;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docFragment = doc.createDocumentFragment();
+ attrList = docFragment.attributes;
+
+ assertNull("attributesNull",attrList);
+ value = docFragment.nodeValue;
+
+ assertNull("initiallyNull",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentfragmentnodevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute-expected.txt
new file mode 100644
index 0000000..f589a92
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentnodeattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute.html b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute.html
new file mode 100644
index 0000000..7943311
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentnodeattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute.js b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute.js
new file mode 100644
index 0000000..0509317
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodeattribute.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentnodeattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getAttributes()" method invoked on a Document
+Node returns null.
+
+Retrieve the DOM Document and invoke the
+"getAttributes()" method on the Document Node.
+It should return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document
+*/
+function hc_nodedocumentnodeattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentnodeattribute") != null) return;
+ var doc;
+ var attrList;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ attrList = doc.attributes;
+
+ assertNull("doc_attributes_is_null",attrList);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentnodeattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename-expected.txt
new file mode 100644
index 0000000..8c17fa2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentnodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename.html b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename.html
new file mode 100644
index 0000000..473ff55
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentnodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename.js b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename.js
new file mode 100644
index 0000000..7cdef03
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodename.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentnodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeName()" method for a
+ Document Node is "#document".
+
+ Retrieve the DOM document and check the string returned
+ by the "getNodeName()" method. It should be equal to
+ "#document".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+*/
+function hc_nodedocumentnodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentnodename") != null) return;
+ var doc;
+ var documentName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ documentName = doc.nodeName;
+
+ assertEquals("documentNodeName","#document",documentName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentnodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype-expected.txt
new file mode 100644
index 0000000..856611e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentnodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype.html b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype.html
new file mode 100644
index 0000000..1299eda
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentnodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype.js b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype.js
new file mode 100644
index 0000000..12ac065
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodetype.js
@@ -0,0 +1,110 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentnodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getNodeType()" method for a Document Node
+returns the constant value 9.
+
+Retrieve the document and invoke the "getNodeType()"
+method. The method should return 9.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558
+*/
+function hc_nodedocumentnodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentnodetype") != null) return;
+ var doc;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ nodeType = doc.nodeType;
+
+ assertEquals("nodeDocumentNodeTypeAssert1",9,nodeType);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentnodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue-expected.txt
new file mode 100644
index 0000000..a3e77ef
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentnodevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue.html b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue.html
new file mode 100644
index 0000000..41c02dc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentnodevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue.js b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue.js
new file mode 100644
index 0000000..6cd8934
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodedocumentnodevalue.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodedocumentnodevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeValue()" method for a
+ Document Node is null.
+
+ Retrieve the DOM Document and check the string returned
+ by the "getNodeValue()" method. It should be equal to
+ null.
+
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+*/
+function hc_nodedocumentnodevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentnodevalue") != null) return;
+ var doc;
+ var documentValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ documentValue = doc.nodeValue;
+
+ assertNull("documentNodeValue",documentValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentnodevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes-expected.txt
new file mode 100644
index 0000000..213286c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeelementnodeattributes
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes.html b/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes.html
new file mode 100644
index 0000000..12b374a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeelementnodeattributes.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes.js b/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes.js
new file mode 100644
index 0000000..7046cdd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodeattributes.js
@@ -0,0 +1,145 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeelementnodeattributes";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the third "acronym" element and evaluate Node.attributes.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=236
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2003Jun/0011.html
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=184
+*/
+function hc_nodeelementnodeattributes() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeelementnodeattributes") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var addrAttr;
+ var attrNode;
+ var attrName;
+ var attrList = new Array();
+
+ htmlExpected = new Array();
+ htmlExpected[0] = "title";
+ htmlExpected[1] = "class";
+
+ expected = new Array();
+ expected[0] = "title";
+ expected[1] = "class";
+ expected[2] = "dir";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(2);
+ addrAttr = testAddr.attributes;
+
+ for(var indexN10070 = 0;indexN10070 < addrAttr.length; indexN10070++) {
+ attrNode = addrAttr.item(indexN10070);
+ attrName = attrNode.nodeName;
+
+ attrList[attrList.length] = attrName;
+
+ }
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertEqualsCollection("attrNames_html",toLowerArray(htmlExpected),toLowerArray(attrList));
+
+ }
+
+ else {
+ assertEqualsCollection("attrNames",expected,attrList);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeelementnodeattributes();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeelementnodename-expected.txt
new file mode 100644
index 0000000..bc670d5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeelementnodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodename.html b/LayoutTests/dom/html/level1/core/hc_nodeelementnodename.html
new file mode 100644
index 0000000..8320054
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeelementnodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodename.js b/LayoutTests/dom/html/level1/core/hc_nodeelementnodename.js
new file mode 100644
index 0000000..693d23e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodename.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeelementnodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the first Element Node(Root Node) of the
+ DOM object and check the string returned by the
+ "getNodeName()" method. It should be equal to its
+ tagName.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=251
+*/
+function hc_nodeelementnodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeelementnodename") != null) return;
+ var doc;
+ var elementNode;
+ var elementName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementNode = doc.documentElement;
+
+ elementName = elementNode.nodeName;
+
+
+ if(
+
+ (builder.contentType == "image/svg+xml")
+
+ ) {
+ assertEquals("svgNodeName","svg",elementName);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "nodeName","html",elementName);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeelementnodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype-expected.txt
new file mode 100644
index 0000000..85e912c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeelementnodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype.html b/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype.html
new file mode 100644
index 0000000..0c337e6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeelementnodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype.js b/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype.js
new file mode 100644
index 0000000..56dd936
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodetype.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeelementnodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getNodeType()" method for an Element Node
+ returns the constant value 1.
+
+ Retrieve the root node and invoke the "getNodeType()"
+ method. The method should return 1.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558
+*/
+function hc_nodeelementnodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeelementnodetype") != null) return;
+ var doc;
+ var rootNode;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ rootNode = doc.documentElement;
+
+ nodeType = rootNode.nodeType;
+
+ assertEquals("nodeElementNodeTypeAssert1",1,nodeType);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeelementnodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue-expected.txt
new file mode 100644
index 0000000..39f7753
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeelementnodevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue.html b/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue.html
new file mode 100644
index 0000000..d301e12
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeelementnodevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue.js b/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue.js
new file mode 100644
index 0000000..29124cf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeelementnodevalue.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeelementnodevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeValue()" method for an
+ Element Node is null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+*/
+function hc_nodeelementnodevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeelementnodevalue") != null) return;
+ var doc;
+ var elementNode;
+ var elementValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementNode = doc.documentElement;
+
+ elementValue = elementNode.nodeValue;
+
+ assertNull("elementNodeValue",elementValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeelementnodevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild-expected.txt
new file mode 100644
index 0000000..75a19e7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetfirstchild
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild.html b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild.html
new file mode 100644
index 0000000..3de1d2b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetfirstchild.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild.js b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild.js
new file mode 100644
index 0000000..a4681f0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchild.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetfirstchild";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getFirstChild()" method returns the first child
+ of this node.
+
+ Retrieve the second employee and invoke the
+ "getFirstChild()" method. The NodeName returned
+ should be "#text" or "EM".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-169727388
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodegetfirstchild() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetfirstchild") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var fchildNode;
+ var childName;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ fchildNode = employeeNode.firstChild;
+
+ childName = fchildNode.nodeName;
+
+
+ if(
+ ("#text" == childName)
+ ) {
+ assertEquals("firstChild_w_whitespace","#text",childName);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "firstChild_wo_whitespace","em",childName);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetfirstchild();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull-expected.txt
new file mode 100644
index 0000000..7912b05
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetfirstchildnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull.html b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull.html
new file mode 100644
index 0000000..a682077
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetfirstchildnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull.js b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull.js
new file mode 100644
index 0000000..dec151f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetfirstchildnull.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetfirstchildnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If there is not a first child then the "getFirstChild()"
+ method returns null.
+
+ Retrieve the text of the first "em" element and invoke the "getFirstChild()" method. It
+ should return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-169727388
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodegetfirstchildnull() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetfirstchildnull") != null) return;
+ var doc;
+ var emList;
+ var emNode;
+ var emText;
+ var nullChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ emList = doc.getElementsByTagName("em");
+ emNode = emList.item(0);
+ emText = emNode.firstChild;
+
+ nullChild = emText.firstChild;
+
+ assertNull("nullChild",nullChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetfirstchildnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetlastchild-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetlastchild-expected.txt
new file mode 100644
index 0000000..0a20c60
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetlastchild-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetlastchild
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetlastchild.html b/LayoutTests/dom/html/level1/core/hc_nodegetlastchild.html
new file mode 100644
index 0000000..9e0c636
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetlastchild.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetlastchild.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetlastchild.js b/LayoutTests/dom/html/level1/core/hc_nodegetlastchild.js
new file mode 100644
index 0000000..712c5ef
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetlastchild.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetlastchild";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getLastChild()" method returns the last child
+ of this node.
+
+ Retrieve the second employee and invoke the
+ "getLastChild()" method. The NodeName returned
+ should be "#text".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-61AD09FB
+*/
+function hc_nodegetlastchild() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetlastchild") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var lchildNode;
+ var childName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ lchildNode = employeeNode.lastChild;
+
+ childName = lchildNode.nodeName;
+
+ assertEquals("whitespace","#text",childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetlastchild();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull-expected.txt
new file mode 100644
index 0000000..33a80e9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetlastchildnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull.html b/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull.html
new file mode 100644
index 0000000..4f6da41
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetlastchildnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull.js b/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull.js
new file mode 100644
index 0000000..9e5a6ad
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetlastchildnull.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetlastchildnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ If there is not a last child then the "getLastChild()"
+ method returns null.
+
+ Retrieve the text of the first "em" element and invoke the "getFirstChild()" method. It
+ should return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-61AD09FB
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodegetlastchildnull() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetlastchildnull") != null) return;
+ var doc;
+ var emList;
+ var emNode;
+ var emText;
+ var nullChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ emList = doc.getElementsByTagName("em");
+ emNode = emList.item(0);
+ emText = emNode.firstChild;
+
+ nullChild = emText.lastChild;
+
+ assertNull("nullChild",nullChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetlastchildnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling-expected.txt
new file mode 100644
index 0000000..6923b2b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetnextsibling
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling.html b/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling.html
new file mode 100644
index 0000000..5b57620
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetnextsibling.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling.js b/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling.js
new file mode 100644
index 0000000..3daca44
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetnextsibling.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetnextsibling";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getNextSibling()" method returns the node immediately
+ following this node.
+
+ Retrieve the first child of the second employee and
+ invoke the "getNextSibling()" method. It should return
+ a node with the NodeName of "#text".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F
+*/
+function hc_nodegetnextsibling() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetnextsibling") != null) return;
+ var doc;
+ var elementList;
+ var emNode;
+ var nsNode;
+ var nsName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("em");
+ emNode = elementList.item(1);
+ nsNode = emNode.nextSibling;
+
+ nsName = nsNode.nodeName;
+
+ assertEquals("whitespace","#text",nsName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetnextsibling();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull-expected.txt
new file mode 100644
index 0000000..c8eb7f3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetnextsiblingnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull.html b/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull.html
new file mode 100644
index 0000000..ece3736
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetnextsiblingnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull.js b/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull.js
new file mode 100644
index 0000000..0f9cb7b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetnextsiblingnull.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetnextsiblingnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ If there is not a node immediately following this node the
+
+ "getNextSibling()" method returns null.
+
+
+
+ Retrieve the first child of the second employee and
+
+ invoke the "getNextSibling()" method. It should
+
+ be set to null.
+
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-6AC54C2F
+*/
+function hc_nodegetnextsiblingnull() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetnextsiblingnull") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var lcNode;
+ var nsNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ lcNode = employeeNode.lastChild;
+
+ nsNode = lcNode.nextSibling;
+
+ assertNull("nodeGetNextSiblingNullAssert1",nsNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetnextsiblingnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument-expected.txt
new file mode 100644
index 0000000..f61859b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetownerdocument
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument.html b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument.html
new file mode 100644
index 0000000..1fa551f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetownerdocument.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument.js b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument.js
new file mode 100644
index 0000000..85853b8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocument.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetownerdocument";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Evaluate Node.ownerDocument on the second "p" element.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#node-ownerDoc
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=251
+*/
+function hc_nodegetownerdocument() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetownerdocument") != null) return;
+ var doc;
+ var elementList;
+ var docNode;
+ var ownerDocument;
+ var docElement;
+ var elementName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ docNode = elementList.item(1);
+ ownerDocument = docNode.ownerDocument;
+
+ docElement = ownerDocument.documentElement;
+
+ elementName = docElement.nodeName;
+
+
+ if(
+
+ (builder.contentType == "image/svg+xml")
+
+ ) {
+ assertEquals("svgNodeName","svg",elementName);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "ownerDocElemTagName","html",elementName);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetownerdocument();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull-expected.txt
new file mode 100644
index 0000000..541ed24
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetownerdocumentnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull.html b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull.html
new file mode 100644
index 0000000..97c7626
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetownerdocumentnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull.js b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull.js
new file mode 100644
index 0000000..67bfd87
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetownerdocumentnull.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetownerdocumentnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ The "getOwnerDocument()" method returns null if the target
+
+ node itself is a document.
+
+
+
+ Invoke the "getOwnerDocument()" method on the master
+
+ document. The Document returned should be null.
+
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#node-ownerDoc
+*/
+function hc_nodegetownerdocumentnull() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetownerdocumentnull") != null) return;
+ var doc;
+ var ownerDocument;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ ownerDocument = doc.ownerDocument;
+
+ assertNull("nodeGetOwnerDocumentNullAssert1",ownerDocument);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetownerdocumentnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling-expected.txt
new file mode 100644
index 0000000..d8fe68e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetprevioussibling
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling.html b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling.html
new file mode 100644
index 0000000..b9bc07e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetprevioussibling.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling.js b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling.js
new file mode 100644
index 0000000..5434f05
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussibling.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetprevioussibling";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getPreviousSibling()" method returns the node
+ immediately preceding this node.
+
+ Retrieve the second child of the second employee and
+ invoke the "getPreviousSibling()" method. It should
+ return a node with a NodeName of "#text".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8
+*/
+function hc_nodegetprevioussibling() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetprevioussibling") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var psNode;
+ var psName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(1);
+ psNode = nameNode.previousSibling;
+
+ psName = psNode.nodeName;
+
+ assertEquals("whitespace","#text",psName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetprevioussibling();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull-expected.txt
new file mode 100644
index 0000000..6d74696
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetprevioussiblingnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull.html b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull.html
new file mode 100644
index 0000000..d5218cb
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodegetprevioussiblingnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull.js b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull.js
new file mode 100644
index 0000000..b1dc787
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodegetprevioussiblingnull.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodegetprevioussiblingnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ If there is not a node immediately preceding this node the
+
+ "getPreviousSibling()" method returns null.
+
+
+
+ Retrieve the first child of the second employee and
+
+ invoke the "getPreviousSibling()" method. It should
+
+ be set to null.
+
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-640FB3C8
+*/
+function hc_nodegetprevioussiblingnull() {
+ var success;
+ if(checkInitialization(builder, "hc_nodegetprevioussiblingnull") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var fcNode;
+ var psNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(2);
+ fcNode = employeeNode.firstChild;
+
+ psNode = fcNode.previousSibling;
+
+ assertNull("nodeGetPreviousSiblingNullAssert1",psNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodegetprevioussiblingnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes-expected.txt
new file mode 100644
index 0000000..c39fafb
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodehaschildnodes
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes.html b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes.html
new file mode 100644
index 0000000..27c1ae6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodehaschildnodes.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes.js b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes.js
new file mode 100644
index 0000000..1ff38a9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodes.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodehaschildnodes";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "hasChildNodes()" method returns true if the node
+ has children.
+
+ Retrieve the root node("staff") and invoke the
+ "hasChildNodes()" method. It should return the boolean
+ value "true".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-810594187
+*/
+function hc_nodehaschildnodes() {
+ var success;
+ if(checkInitialization(builder, "hc_nodehaschildnodes") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var state;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ state = employeeNode.hasChildNodes();
+ assertTrue("nodeHasChildAssert1",state);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodehaschildnodes();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse-expected.txt
new file mode 100644
index 0000000..55c67cd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodehaschildnodesfalse
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse.html b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse.html
new file mode 100644
index 0000000..4f9c7df
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodehaschildnodesfalse.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse.js b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse.js
new file mode 100644
index 0000000..f966eba
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodehaschildnodesfalse.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodehaschildnodesfalse";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "hasChildNodes()" method returns false if the node
+ does not have any children.
+
+ Retrieve the text of the first "em" element and invoke the "hasChildNodes()" method. It
+ should return false.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-810594187
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodehaschildnodesfalse() {
+ var success;
+ if(checkInitialization(builder, "hc_nodehaschildnodesfalse") != null) return;
+ var doc;
+ var emList;
+ var emNode;
+ var emText;
+ var hasChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ emList = doc.getElementsByTagName("em");
+ emNode = emList.item(0);
+ emText = emNode.firstChild;
+
+ hasChild = emText.hasChildNodes();
+ assertFalse("hasChild",hasChild);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodehaschildnodesfalse();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore-expected.txt
new file mode 100644
index 0000000..25e32b8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbefore
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore.html
new file mode 100644
index 0000000..b3a5e6b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbefore.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore.js
new file mode 100644
index 0000000..f73bd6d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbefore.js
@@ -0,0 +1,153 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbefore";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertBefore(newChild,refChild)" method inserts the
+ node "newChild" before the node "refChild".
+
+ Insert a newly created Element node before the second
+ sup element in the document and check the "newChild"
+ and "refChild" after insertion for correct placement.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=261
+*/
+function hc_nodeinsertbefore() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbefore") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var refChild;
+ var newChild;
+ var child;
+ var childName;
+ var insertedNode;
+ var actual = new Array();
+
+ expected = new Array();
+ expected[0] = "em";
+ expected[1] = "strong";
+ expected[2] = "code";
+ expected[3] = "br";
+ expected[4] = "sup";
+ expected[5] = "var";
+ expected[6] = "acronym";
+
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("sup");
+ refChild = elementList.item(2);
+ employeeNode = refChild.parentNode;
+
+ childList = employeeNode.childNodes;
+
+ newChild = doc.createElement("br");
+ insertedNode = employeeNode.insertBefore(newChild,refChild);
+ for(var indexN10091 = 0;indexN10091 < childList.length; indexN10091++) {
+ child = childList.item(indexN10091);
+ nodeType = child.nodeType;
+
+
+ if(
+ (1 == nodeType)
+ ) {
+ childName = child.nodeName;
+
+ actual[actual.length] = childName;
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "nodeNames",expected,actual);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbefore();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment-expected.txt
new file mode 100644
index 0000000..8eaa3c3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforedocfragment
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment.html
new file mode 100644
index 0000000..1b27170
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbeforedocfragment.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment.js
new file mode 100644
index 0000000..1e132c9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforedocfragment.js
@@ -0,0 +1,141 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforedocfragment";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the "newChild" is a DocumentFragment object then all
+ its children are inserted in the same order before the
+ the "refChild".
+
+ Create a DocumentFragment object and populate it with
+ two Element nodes. Retrieve the second employee and
+ insert the newly created DocumentFragment before its
+ fourth child. The second employee should now have two
+ extra children("newChild1" and "newChild2") at
+ positions fourth and fifth respectively.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeinsertbeforedocfragment() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbeforedocfragment") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var refChild;
+ var newdocFragment;
+ var newChild1;
+ var newChild2;
+ var child;
+ var childName;
+ var appendedChild;
+ var insertedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ refChild = childList.item(3);
+ newdocFragment = doc.createDocumentFragment();
+ newChild1 = doc.createElement("br");
+ newChild2 = doc.createElement("b");
+ appendedChild = newdocFragment.appendChild(newChild1);
+ appendedChild = newdocFragment.appendChild(newChild2);
+ insertedNode = employeeNode.insertBefore(newdocFragment,refChild);
+ child = childList.item(3);
+ childName = child.nodeName;
+
+ assertEqualsAutoCase("element", "childName3","br",childName);
+ child = childList.item(4);
+ childName = child.nodeName;
+
+ assertEqualsAutoCase("element", "childName4","b",childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbeforedocfragment();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype-expected.txt
new file mode 100644
index 0000000..25bf5bc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforeinvalidnodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype.html
new file mode 100644
index 0000000..25801c0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbeforeinvalidnodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype.js
new file mode 100644
index 0000000..e467f33
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforeinvalidnodetype.js
@@ -0,0 +1,136 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforeinvalidnodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertBefore(newChild,refChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to insert a newly
+ created Attr node. An Element node cannot have children
+ of the "Attr" type, therefore the desired exception
+ should be raised.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=406
+*/
+function hc_nodeinsertbeforeinvalidnodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbeforeinvalidnodetype") != null) return;
+ var doc;
+ var rootNode;
+ var newChild;
+ var elementList;
+ var refChild;
+ var insertedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newChild = doc.createAttribute("title");
+ elementList = doc.getElementsByTagName("p");
+ refChild = elementList.item(1);
+ rootNode = refChild.parentNode;
+
+
+ {
+ success = false;
+ try {
+ insertedNode = rootNode.insertBefore(newChild,refChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbeforeinvalidnodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument-expected.txt
new file mode 100644
index 0000000..0e63d07
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforenewchilddiffdocument
+Status: failure
+Detail: throw_WRONG_DOCUMENT_ERR: assertTrue failed
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument.html
new file mode 100644
index 0000000..732bf0c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbeforenewchilddiffdocument.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument.js
new file mode 100644
index 0000000..915104f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchilddiffdocument.js
@@ -0,0 +1,147 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforenewchilddiffdocument";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ docsLoaded += preload(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ docsLoaded += preload(doc2Ref, "doc2", "hc_staff");
+
+ if (docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertBefore(newChild,refChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to insert a new
+ child that was created from a different document than the
+ one that created the second employee. An attempt to
+ insert such a child should raise the desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='WRONG_DOCUMENT_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='WRONG_DOCUMENT_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeinsertbeforenewchilddiffdocument() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbeforenewchilddiffdocument") != null) return;
+ var doc1;
+ var doc2;
+ var refChild;
+ var newChild;
+ var elementList;
+ var elementNode;
+ var insertedNode;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ doc1 = load(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ doc2 = load(doc2Ref, "doc2", "hc_staff");
+ newChild = doc1.createElement("br");
+ elementList = doc2.getElementsByTagName("p");
+ elementNode = elementList.item(1);
+ refChild = elementNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ insertedNode = elementNode.insertBefore(newChild,refChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 4);
+ }
+ assertTrue("throw_WRONG_DOCUMENT_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbeforenewchilddiffdocument();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists-expected.txt
new file mode 100644
index 0000000..3371d4e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforenewchildexists
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists.html
new file mode 100644
index 0000000..d7a5775
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbeforenewchildexists.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists.js
new file mode 100644
index 0000000..f7adaff
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenewchildexists.js
@@ -0,0 +1,151 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforenewchildexists";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the "newChild" is already in the tree, the
+ "insertBefore(newChild,refChild)" method must first
+ remove it before the insertion takes place.
+
+ Insert a node Element ("em") that is already
+ present in the tree. The existing node should be
+ removed first and the new one inserted. The node is
+ inserted at a different position in the tree to assure
+ that it was indeed inserted.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodeinsertbeforenewchildexists() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbeforenewchildexists") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var refChild;
+ var newChild;
+ var child;
+ var childName;
+ var insertedNode;
+ expected = new Array();
+ expected[0] = "strong";
+ expected[1] = "code";
+ expected[2] = "sup";
+ expected[3] = "var";
+ expected[4] = "em";
+ expected[5] = "acronym";
+
+ var result = new Array();
+
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.getElementsByTagName("*");
+ refChild = childList.item(5);
+ newChild = childList.item(0);
+ insertedNode = employeeNode.insertBefore(newChild,refChild);
+ for(var indexN1008C = 0;indexN1008C < childList.length; indexN1008C++) {
+ child = childList.item(indexN1008C);
+ nodeType = child.nodeType;
+
+
+ if(
+ (1 == nodeType)
+ ) {
+ childName = child.nodeName;
+
+ result[result.length] = childName;
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "childNames",expected,result);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbeforenewchildexists();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor-expected.txt
new file mode 100644
index 0000000..f8234d9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforenodeancestor
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor.html
new file mode 100644
index 0000000..80affdd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbeforenodeancestor.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor.js
new file mode 100644
index 0000000..cd7c956
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodeancestor.js
@@ -0,0 +1,135 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforenodeancestor";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertBefore(newChild,refChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to be
+ inserted is one of this nodes ancestors.
+
+ Retrieve the second employee and attempt to insert a
+ node that is one of its ancestors(root node). An
+ attempt to insert such a node should raise the
+ desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+*/
+function hc_nodeinsertbeforenodeancestor() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbeforenodeancestor") != null) return;
+ var doc;
+ var newChild;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var refChild;
+ var insertedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newChild = doc.documentElement;
+
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ refChild = childList.item(0);
+
+ {
+ success = false;
+ try {
+ insertedNode = employeeNode.insertBefore(newChild,refChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbeforenodeancestor();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename-expected.txt
new file mode 100644
index 0000000..4b2c81b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforenodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename.html
new file mode 100644
index 0000000..d02a36b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbeforenodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename.js
new file mode 100644
index 0000000..eeb61c8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforenodename.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforenodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertBefore(newChild,refchild)" method returns
+ the node being inserted.
+
+ Insert an Element node before the fourth
+ child of the second employee and check the node
+ returned from the "insertBefore(newChild,refChild)"
+ method. The node returned should be "newChild".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeinsertbeforenodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbeforenodename") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var refChild;
+ var newChild;
+ var insertedNode;
+ var childName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ refChild = childList.item(3);
+ newChild = doc.createElement("br");
+ insertedNode = employeeNode.insertBefore(newChild,refChild);
+ childName = insertedNode.nodeName;
+
+ assertEqualsAutoCase("element", "nodeName","br",childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbeforenodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent-expected.txt
new file mode 100644
index 0000000..0a2f71d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforerefchildnonexistent
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent.html
new file mode 100644
index 0000000..97a276f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbeforerefchildnonexistent.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent.js
new file mode 100644
index 0000000..d4c8f3e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnonexistent.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforerefchildnonexistent";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "insertBefore(newChild,refChild)" method raises a
+ NOT_FOUND_ERR DOMException if the reference child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to insert a
+ new node before a reference node that is not a child
+ of this node. An attempt to insert before a non child
+ node should raise the desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-952280727')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_nodeinsertbeforerefchildnonexistent() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbeforerefchildnonexistent") != null) return;
+ var doc;
+ var refChild;
+ var newChild;
+ var elementList;
+ var elementNode;
+ var insertedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newChild = doc.createElement("br");
+ refChild = doc.createElement("b");
+ elementList = doc.getElementsByTagName("p");
+ elementNode = elementList.item(1);
+
+ {
+ success = false;
+ try {
+ insertedNode = elementNode.insertBefore(newChild,refChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 8);
+ }
+ assertTrue("throw_NOT_FOUND_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbeforerefchildnonexistent();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull-expected.txt
new file mode 100644
index 0000000..be403d0
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforerefchildnull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull.html b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull.html
new file mode 100644
index 0000000..0e099ac
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeinsertbeforerefchildnull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull.js b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull.js
new file mode 100644
index 0000000..a0bf5e4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeinsertbeforerefchildnull.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeinsertbeforerefchildnull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the "refChild" is null then the
+ "insertBefore(newChild,refChild)" method inserts the
+ node "newChild" at the end of the list of children.
+
+ Retrieve the second employee and invoke the
+ "insertBefore(newChild,refChild)" method with
+ refChild=null. Since "refChild" is null the "newChild"
+ should be added to the end of the list. The last item
+ in the list is checked after insertion. The last Element
+ node of the list should be "newChild".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-952280727
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeinsertbeforerefchildnull() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeinsertbeforerefchildnull") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var refChild = null;
+
+ var newChild;
+ var child;
+ var childName;
+ var insertedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ newChild = doc.createElement("br");
+ insertedNode = employeeNode.insertBefore(newChild,refChild);
+ child = employeeNode.lastChild;
+
+ childName = child.nodeName;
+
+ assertEqualsAutoCase("element", "nodeName","br",childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeinsertbeforerefchildnull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero-expected.txt
new file mode 100644
index 0000000..0b472c9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistindexequalzero
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero.html b/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero.html
new file mode 100644
index 0000000..01a0893
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodelistindexequalzero.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero.js b/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero.js
new file mode 100644
index 0000000..eff64d9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexequalzero.js
@@ -0,0 +1,135 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistindexequalzero";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Create a list of all the children elements of the third
+ employee and access its first child by using an index
+ of 0. This should result in the whitspace before "em" being
+ selected (em when ignoring whitespace).
+ Further we evaluate its content(by using
+ the "getNodeName()" method) to ensure the proper
+ element was accessed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodelistindexequalzero() {
+ var success;
+ if(checkInitialization(builder, "hc_nodelistindexequalzero") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var employeeList;
+ var child;
+ var childName;
+ var length;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(2);
+ employeeList = employeeNode.childNodes;
+
+ length = employeeList.length;
+
+ child = employeeList.item(0);
+ childName = child.nodeName;
+
+
+ if(
+ (13 == length)
+ ) {
+ assertEquals("childName_w_whitespace","#text",childName);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "childName_wo_whitespace","em",childName);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodelistindexequalzero();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength-expected.txt
new file mode 100644
index 0000000..a2ef03d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistindexgetlength
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength.html b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength.html
new file mode 100644
index 0000000..bc36c26
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodelistindexgetlength.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength.js b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength.js
new file mode 100644
index 0000000..d169a62
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlength.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistindexgetlength";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getLength()" method returns the number of nodes
+ in the list.
+
+ Create a list of all the children elements of the third
+ employee and invoke the "getLength()" method.
+ It should contain the value 13.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodelistindexgetlength() {
+ var success;
+ if(checkInitialization(builder, "hc_nodelistindexgetlength") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var employeeList;
+ var length;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(2);
+ employeeList = employeeNode.childNodes;
+
+ length = employeeList.length;
+
+
+ if(
+ (6 == length)
+ ) {
+ assertEquals("length_wo_space",6,length);
+
+ }
+
+ else {
+ assertEquals("length_w_space",13,length);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodelistindexgetlength();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist-expected.txt
new file mode 100644
index 0000000..60fc464
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistindexgetlengthofemptylist
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist.html b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist.html
new file mode 100644
index 0000000..fb846e8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodelistindexgetlengthofemptylist.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist.js b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist.js
new file mode 100644
index 0000000..9ae4969
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexgetlengthofemptylist.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistindexgetlengthofemptylist";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getLength()" method returns the number of nodes
+ in the list.(Test for EMPTY list)
+
+ Create a list of all the children of the Text node
+ inside the first child of the third employee and
+ invoke the "getLength()" method. It should contain
+ the value 0.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodelistindexgetlengthofemptylist() {
+ var success;
+ if(checkInitialization(builder, "hc_nodelistindexgetlengthofemptylist") != null) return;
+ var doc;
+ var emList;
+ var emNode;
+ var textNode;
+ var textList;
+ var length;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ emList = doc.getElementsByTagName("em");
+ emNode = emList.item(2);
+ textNode = emNode.firstChild;
+
+ textList = textNode.childNodes;
+
+ length = textList.length;
+
+ assertEquals("length",0,length);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodelistindexgetlengthofemptylist();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero-expected.txt
new file mode 100644
index 0000000..3c05231
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistindexnotzero
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero.html b/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero.html
new file mode 100644
index 0000000..b974e36
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodelistindexnotzero.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero.js b/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero.js
new file mode 100644
index 0000000..8976e02
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistindexnotzero.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistindexnotzero";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The items in the list are accessible via an integral
+ index starting from zero.
+ (Index not equal 0)
+
+ Create a list of all the children elements of the third
+ employee and access its fourth child by using an index
+ of 3 and calling getNodeName() which should return
+ "strong" (no whitespace) or "#text" (with whitespace).
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodelistindexnotzero() {
+ var success;
+ if(checkInitialization(builder, "hc_nodelistindexnotzero") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var employeeList;
+ var child;
+ var childName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(2);
+ employeeList = employeeNode.childNodes;
+
+ child = employeeList.item(3);
+ childName = child.nodeName;
+
+
+ if(
+ ("#text" == childName)
+ ) {
+ assertEquals("childName_space","#text",childName);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "childName_strong","strong",childName);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodelistindexnotzero();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem-expected.txt
new file mode 100644
index 0000000..66ccc37
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistreturnfirstitem
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem.html b/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem.html
new file mode 100644
index 0000000..7a83e0f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodelistreturnfirstitem.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem.js b/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem.js
new file mode 100644
index 0000000..117be61
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistreturnfirstitem.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistreturnfirstitem";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Create a list of all the children elements of the third
+ employee and access its first child by invoking the
+ "item(index)" method with an index=0. This should
+ result in node with a nodeName of "#text" or "em".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodelistreturnfirstitem() {
+ var success;
+ if(checkInitialization(builder, "hc_nodelistreturnfirstitem") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var employeeList;
+ var child;
+ var childName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(2);
+ employeeList = employeeNode.childNodes;
+
+ child = employeeList.item(0);
+ childName = child.nodeName;
+
+
+ if(
+ ("#text" == childName)
+ ) {
+ assertEquals("nodeName_w_space","#text",childName);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "nodeName_wo_space","em",childName);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodelistreturnfirstitem();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem-expected.txt
new file mode 100644
index 0000000..5e8c7d1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistreturnlastitem
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem.html b/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem.html
new file mode 100644
index 0000000..1408237
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodelistreturnlastitem.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem.js b/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem.js
new file mode 100644
index 0000000..b6652fe
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelistreturnlastitem.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelistreturnlastitem";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Create a list of all the children elements of the third
+ employee and access its last child by invoking the
+ "item(index)" method with an index=length-1. This should
+ result in node with nodeName="#text" or acronym.
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodelistreturnlastitem() {
+ var success;
+ if(checkInitialization(builder, "hc_nodelistreturnlastitem") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var employeeList;
+ var child;
+ var childName;
+ var index;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(2);
+ employeeList = employeeNode.childNodes;
+
+ index = employeeList.length;
+
+ index -= 1;
+child = employeeList.item(index);
+ childName = child.nodeName;
+
+
+ if(
+ (12 == index)
+ ) {
+ assertEquals("lastNodeName_w_whitespace","#text",childName);
+
+ }
+
+ else {
+ assertEqualsAutoCase("element", "lastNodeName","acronym",childName);
+ assertEquals("index",5,index);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodelistreturnlastitem();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist-expected.txt
new file mode 100644
index 0000000..5f1ec33
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelisttraverselist
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist.html b/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist.html
new file mode 100644
index 0000000..30a7175
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodelisttraverselist.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist.js b/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist.js
new file mode 100644
index 0000000..dc6862b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodelisttraverselist.js
@@ -0,0 +1,149 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodelisttraverselist";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The range of valid child node indices is 0 thru length -1
+
+ Create a list of all the children elements of the third
+ employee and traverse the list from index=0 thru
+ length -1.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-203510337
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-844377136
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodelisttraverselist() {
+ var success;
+ if(checkInitialization(builder, "hc_nodelisttraverselist") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var employeeList;
+ var child;
+ var childName;
+ var nodeType;
+ var result = new Array();
+
+ expected = new Array();
+ expected[0] = "em";
+ expected[1] = "strong";
+ expected[2] = "code";
+ expected[3] = "sup";
+ expected[4] = "var";
+ expected[5] = "acronym";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(2);
+ employeeList = employeeNode.childNodes;
+
+ for(var indexN10073 = 0;indexN10073 < employeeList.length; indexN10073++) {
+ child = employeeList.item(indexN10073);
+ nodeType = child.nodeType;
+
+ childName = child.nodeName;
+
+
+ if(
+ (1 == nodeType)
+ ) {
+ result[result.length] = childName;
+
+ }
+
+ else {
+ assertEquals("textNodeType",3,nodeType);
+ assertEquals("textNodeName","#text",childName);
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "nodeNames",expected,result);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodelisttraverselist();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeparentnode-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeparentnode-expected.txt
new file mode 100644
index 0000000..50dbdea
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeparentnode-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeparentnode
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeparentnode.html b/LayoutTests/dom/html/level1/core/hc_nodeparentnode.html
new file mode 100644
index 0000000..ed6fc67
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeparentnode.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeparentnode.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeparentnode.js b/LayoutTests/dom/html/level1/core/hc_nodeparentnode.js
new file mode 100644
index 0000000..e3408f6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeparentnode.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeparentnode";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getParentNode()" method returns the parent
+ of this node.
+
+ Retrieve the second employee and invoke the
+ "getParentNode()" method on this node. It should
+ be set to "body".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317
+*/
+function hc_nodeparentnode() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeparentnode") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var parentNode;
+ var parentName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ parentNode = employeeNode.parentNode;
+
+ parentName = parentNode.nodeName;
+
+ assertEqualsAutoCase("element", "parentNodeName","body",parentName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeparentnode();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull-expected.txt
new file mode 100644
index 0000000..2feac92
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeparentnodenull
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull.html b/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull.html
new file mode 100644
index 0000000..32bae6c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodeparentnodenull.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull.js b/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull.js
new file mode 100644
index 0000000..9c80de3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodeparentnodenull.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodeparentnodenull";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "getParentNode()" method invoked on a node that has
+ just been created and not yet added to the tree is null.
+
+ Create a new "employee" Element node using the
+ "createElement(name)" method from the Document interface.
+ Since this new node has not yet been added to the tree,
+ the "getParentNode()" method will return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1060184317
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodeparentnodenull() {
+ var success;
+ if(checkInitialization(builder, "hc_nodeparentnodenull") != null) return;
+ var doc;
+ var createdNode;
+ var parentNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ createdNode = doc.createElement("br");
+ parentNode = createdNode.parentNode;
+
+ assertNull("parentNode",parentNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodeparentnodenull();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechild-expected.txt b/LayoutTests/dom/html/level1/core/hc_noderemovechild-expected.txt
new file mode 100644
index 0000000..9a47f28
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechild-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_noderemovechild
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechild.html b/LayoutTests/dom/html/level1/core/hc_noderemovechild.html
new file mode 100644
index 0000000..becc596
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechild.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_noderemovechild.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechild.js b/LayoutTests/dom/html/level1/core/hc_noderemovechild.js
new file mode 100644
index 0000000..35e04b2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechild.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_noderemovechild";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeChild(oldChild)" method removes the child node
+ indicated by "oldChild" from the list of children and
+ returns it.
+
+ Remove the first employee by invoking the
+ "removeChild(oldChild)" method an checking the
+ node returned by the "getParentNode()" method. It
+ should be set to null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_noderemovechild() {
+ var success;
+ if(checkInitialization(builder, "hc_noderemovechild") != null) return;
+ var doc;
+ var rootNode;
+ var childList;
+ var childToRemove;
+ var removedChild;
+ var parentNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ rootNode = doc.documentElement;
+
+ childList = rootNode.childNodes;
+
+ childToRemove = childList.item(1);
+ removedChild = rootNode.removeChild(childToRemove);
+ parentNode = removedChild.parentNode;
+
+ assertNull("parentNodeNull",parentNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_noderemovechild();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename-expected.txt
new file mode 100644
index 0000000..27367bc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_noderemovechildgetnodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename.html b/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename.html
new file mode 100644
index 0000000..a586755
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_noderemovechildgetnodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename.js b/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename.js
new file mode 100644
index 0000000..d81a2a9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildgetnodename.js
@@ -0,0 +1,128 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_noderemovechildgetnodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeChild(oldChild)" method returns
+ the node being removed.
+
+ Remove the first child of the second employee
+ and check the NodeName returned by the
+ "removeChild(oldChild)" method. The returned node
+ should have a NodeName equal to "#text".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_noderemovechildgetnodename() {
+ var success;
+ if(checkInitialization(builder, "hc_noderemovechildgetnodename") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var oldChild;
+ var removedChild;
+ var childName;
+ var oldName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ oldChild = childList.item(0);
+ oldName = oldChild.nodeName;
+
+ removedChild = employeeNode.removeChild(oldChild);
+ assertNotNull("notnull",removedChild);
+childName = removedChild.nodeName;
+
+ assertEquals("nodeName",oldName,childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_noderemovechildgetnodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildnode-expected.txt b/LayoutTests/dom/html/level1/core/hc_noderemovechildnode-expected.txt
new file mode 100644
index 0000000..c0ef24e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildnode-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_noderemovechildnode
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildnode.html b/LayoutTests/dom/html/level1/core/hc_noderemovechildnode.html
new file mode 100644
index 0000000..8ad215e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildnode.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_noderemovechildnode.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildnode.js b/LayoutTests/dom/html/level1/core/hc_noderemovechildnode.js
new file mode 100644
index 0000000..b6cef22
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildnode.js
@@ -0,0 +1,160 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_noderemovechildnode";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeChild(oldChild)" method removes the node
+ indicated by "oldChild".
+
+ Retrieve the second p element and remove its first child.
+ After the removal, the second p element should have 5 element
+ children and the first child should now be the child
+ that used to be at the second position in the list.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_noderemovechildnode() {
+ var success;
+ if(checkInitialization(builder, "hc_noderemovechildnode") != null) return;
+ var doc;
+ var elementList;
+ var emList;
+ var employeeNode;
+ var childList;
+ var oldChild;
+ var child;
+ var childName;
+ var length;
+ var removedChild;
+ var removedName;
+ var nodeType;
+ expected = new Array();
+ expected[0] = "strong";
+ expected[1] = "code";
+ expected[2] = "sup";
+ expected[3] = "var";
+ expected[4] = "acronym";
+
+ var actual = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ emList = employeeNode.getElementsByTagName("em");
+ oldChild = emList.item(0);
+ removedChild = employeeNode.removeChild(oldChild);
+ removedName = removedChild.nodeName;
+
+ assertEqualsAutoCase("element", "removedName","em",removedName);
+ for(var indexN10098 = 0;indexN10098 < childList.length; indexN10098++) {
+ child = childList.item(indexN10098);
+ nodeType = child.nodeType;
+
+ childName = child.nodeName;
+
+
+ if(
+ (1 == nodeType)
+ ) {
+ actual[actual.length] = childName;
+
+ }
+
+ else {
+ assertEquals("textNodeType",3,nodeType);
+ assertEquals("textNodeName","#text",childName);
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "childNames",expected,actual);
+
+}
+
+
+
+
+function runTest() {
+ hc_noderemovechildnode();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent-expected.txt b/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent-expected.txt
new file mode 100644
index 0000000..96ee030
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_noderemovechildoldchildnonexistent
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent.html b/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent.html
new file mode 100644
index 0000000..bc80850
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_noderemovechildoldchildnonexistent.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent.js b/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent.js
new file mode 100644
index 0000000..7f68dbd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_noderemovechildoldchildnonexistent.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_noderemovechildoldchildnonexistent";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "removeChild(oldChild)" method raises a
+ NOT_FOUND_ERR DOMException if the old child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to remove a
+ node that is not one of its children. An attempt to
+ remove such a node should raise the desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-1734834066')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1734834066
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_noderemovechildoldchildnonexistent() {
+ var success;
+ if(checkInitialization(builder, "hc_noderemovechildoldchildnonexistent") != null) return;
+ var doc;
+ var oldChild;
+ var elementList;
+ var elementNode;
+ var removedChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ oldChild = doc.createElement("br");
+ elementList = doc.getElementsByTagName("p");
+ elementNode = elementList.item(1);
+
+ {
+ success = false;
+ try {
+ removedChild = elementNode.removeChild(oldChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 8);
+ }
+ assertTrue("throw_NOT_FOUND_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_noderemovechildoldchildnonexistent();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechild-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodereplacechild-expected.txt
new file mode 100644
index 0000000..c892b45
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechild-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechild
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechild.html b/LayoutTests/dom/html/level1/core/hc_nodereplacechild.html
new file mode 100644
index 0000000..1443b65
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechild.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodereplacechild.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechild.js b/LayoutTests/dom/html/level1/core/hc_nodereplacechild.js
new file mode 100644
index 0000000..db4ba3b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechild.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechild";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceChild(newChild,oldChild)" method replaces
+ the node "oldChild" with the node "newChild".
+
+ Replace the first element of the second employee with
+ a newly created Element node. Check the first position
+ after the replacement operation is completed. The new
+ Element should be "newChild".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodereplacechild() {
+ var success;
+ if(checkInitialization(builder, "hc_nodereplacechild") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var oldChild;
+ var newChild;
+ var child;
+ var childName;
+ var replacedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ oldChild = childList.item(0);
+ newChild = doc.createElement("br");
+ replacedNode = employeeNode.replaceChild(newChild,oldChild);
+ child = childList.item(0);
+ childName = child.nodeName;
+
+ assertEqualsAutoCase("element", "nodeName","br",childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodereplacechild();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype-expected.txt
new file mode 100644
index 0000000..2afd22b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildinvalidnodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype.html b/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype.html
new file mode 100644
index 0000000..40a0526
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodereplacechildinvalidnodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype.js b/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype.js
new file mode 100644
index 0000000..789f5cf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildinvalidnodetype.js
@@ -0,0 +1,136 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildinvalidnodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceChild(newChild,oldChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if this node is of
+ a type that does not allow children of the type "newChild"
+ to be inserted.
+
+ Retrieve the root node and attempt to replace
+ one of its children with a newly created Attr node.
+ An Element node cannot have children of the "Attr"
+ type, therefore the desired exception should be raised.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=406
+*/
+function hc_nodereplacechildinvalidnodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodereplacechildinvalidnodetype") != null) return;
+ var doc;
+ var rootNode;
+ var newChild;
+ var elementList;
+ var oldChild;
+ var replacedChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newChild = doc.createAttribute("lang");
+ elementList = doc.getElementsByTagName("p");
+ oldChild = elementList.item(1);
+ rootNode = oldChild.parentNode;
+
+
+ {
+ success = false;
+ try {
+ replacedChild = rootNode.replaceChild(newChild,oldChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodereplacechildinvalidnodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument-expected.txt
new file mode 100644
index 0000000..4cacbb9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildnewchilddiffdocument
+Status: failure
+Detail: throw_WRONG_DOCUMENT_ERR: assertTrue failed
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument.html b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument.html
new file mode 100644
index 0000000..6843660
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodereplacechildnewchilddiffdocument.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument.js b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument.js
new file mode 100644
index 0000000..23af319
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchilddiffdocument.js
@@ -0,0 +1,147 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildnewchilddiffdocument";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ docsLoaded += preload(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ docsLoaded += preload(doc2Ref, "doc2", "hc_staff");
+
+ if (docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 2) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceChild(newChild,oldChild)" method raises a
+ WRONG_DOCUMENT_ERR DOMException if the "newChild" was
+ created from a different document than the one that
+ created this node.
+
+ Retrieve the second employee and attempt to replace one
+ of its children with a node created from a different
+ document. An attempt to make such a replacement
+ should raise the desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodereplacechildnewchilddiffdocument() {
+ var success;
+ if(checkInitialization(builder, "hc_nodereplacechildnewchilddiffdocument") != null) return;
+ var doc1;
+ var doc2;
+ var oldChild;
+ var newChild;
+ var elementList;
+ var elementNode;
+ var replacedChild;
+
+ var doc1Ref = null;
+ if (typeof(this.doc1) != 'undefined') {
+ doc1Ref = this.doc1;
+ }
+ doc1 = load(doc1Ref, "doc1", "hc_staff");
+
+ var doc2Ref = null;
+ if (typeof(this.doc2) != 'undefined') {
+ doc2Ref = this.doc2;
+ }
+ doc2 = load(doc2Ref, "doc2", "hc_staff");
+ newChild = doc1.createElement("br");
+ elementList = doc2.getElementsByTagName("p");
+ elementNode = elementList.item(1);
+ oldChild = elementNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ replacedChild = elementNode.replaceChild(newChild,oldChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 4);
+ }
+ assertTrue("throw_WRONG_DOCUMENT_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodereplacechildnewchilddiffdocument();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists-expected.txt
new file mode 100644
index 0000000..c32b87d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildnewchildexists
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists.html b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists.html
new file mode 100644
index 0000000..4d927c5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodereplacechildnewchildexists.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists.js b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists.js
new file mode 100644
index 0000000..06be50b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnewchildexists.js
@@ -0,0 +1,155 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildnewchildexists";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If the "newChild" is already in the tree, it is first
+ removed before the new one is added.
+
+ Retrieve the second "p" and replace "acronym" with its "em".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=246
+*/
+function hc_nodereplacechildnewchildexists() {
+ var success;
+ if(checkInitialization(builder, "hc_nodereplacechildnewchildexists") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var oldChild = null;
+
+ var newChild = null;
+
+ var child;
+ var childName;
+ var childNode;
+ var actual = new Array();
+
+ expected = new Array();
+ expected[0] = "strong";
+ expected[1] = "code";
+ expected[2] = "sup";
+ expected[3] = "var";
+ expected[4] = "em";
+
+ var replacedChild;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.getElementsByTagName("*");
+ newChild = childList.item(0);
+ oldChild = childList.item(5);
+ replacedChild = employeeNode.replaceChild(newChild,oldChild);
+ assertSame("return_value_same",oldChild,replacedChild);
+for(var indexN10094 = 0;indexN10094 < childList.length; indexN10094++) {
+ childNode = childList.item(indexN10094);
+ childName = childNode.nodeName;
+
+ nodeType = childNode.nodeType;
+
+
+ if(
+ (1 == nodeType)
+ ) {
+ actual[actual.length] = childName;
+
+ }
+
+ else {
+ assertEquals("textNodeType",3,nodeType);
+ assertEquals("textNodeName","#text",childName);
+
+ }
+
+ }
+ assertEqualsListAutoCase("element", "childNames",expected,actual);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodereplacechildnewchildexists();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor-expected.txt
new file mode 100644
index 0000000..b5f75a6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildnodeancestor
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor.html b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor.html
new file mode 100644
index 0000000..d5c187a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodereplacechildnodeancestor.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor.js b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor.js
new file mode 100644
index 0000000..5e7b044
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodeancestor.js
@@ -0,0 +1,135 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildnodeancestor";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceChild(newChild,oldChild)" method raises a
+ HIERARCHY_REQUEST_ERR DOMException if the node to put
+ in is one of this node's ancestors.
+
+ Retrieve the second employee and attempt to replace
+ one of its children with an ancestor node(root node).
+ An attempt to make such a replacement should raise the
+ desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+*/
+function hc_nodereplacechildnodeancestor() {
+ var success;
+ if(checkInitialization(builder, "hc_nodereplacechildnodeancestor") != null) return;
+ var doc;
+ var newChild;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var oldChild;
+ var replacedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newChild = doc.documentElement;
+
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.childNodes;
+
+ oldChild = childList.item(0);
+
+ {
+ success = false;
+ try {
+ replacedNode = employeeNode.replaceChild(newChild,oldChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodereplacechildnodeancestor();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename-expected.txt
new file mode 100644
index 0000000..8916ac6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildnodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename.html b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename.html
new file mode 100644
index 0000000..ef85dbb
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodereplacechildnodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename.js b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename.js
new file mode 100644
index 0000000..baeab8a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildnodename.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildnodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceChild(newChild,oldChild)" method returns
+ the node being replaced.
+
+ Replace the second Element of the second employee with
+ a newly created node Element and check the NodeName
+ returned by the "replaceChild(newChild,oldChild)"
+ method. The returned node should have a NodeName equal
+ to "em".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodereplacechildnodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodereplacechildnodename") != null) return;
+ var doc;
+ var elementList;
+ var employeeNode;
+ var childList;
+ var oldChild;
+ var newChild;
+ var replacedNode;
+ var childName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("p");
+ employeeNode = elementList.item(1);
+ childList = employeeNode.getElementsByTagName("em");
+ oldChild = childList.item(0);
+ newChild = doc.createElement("br");
+ replacedNode = employeeNode.replaceChild(newChild,oldChild);
+ childName = replacedNode.nodeName;
+
+ assertEqualsAutoCase("element", "replacedNodeName","em",childName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodereplacechildnodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent-expected.txt
new file mode 100644
index 0000000..8f75cb4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildoldchildnonexistent
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent.html b/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent.html
new file mode 100644
index 0000000..b045d97
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodereplacechildoldchildnonexistent.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent.js b/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent.js
new file mode 100644
index 0000000..74ef15c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodereplacechildoldchildnonexistent.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodereplacechildoldchildnonexistent";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "replaceChild(newChild,oldChild)" method raises a
+ NOT_FOUND_ERR DOMException if the old child is
+ not a child of this node.
+
+ Retrieve the second employee and attempt to replace a
+ node that is not one of its children. An attempt to
+ replace such a node should raise the desired exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-785887307')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NOT_FOUND_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-785887307
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=247
+*/
+function hc_nodereplacechildoldchildnonexistent() {
+ var success;
+ if(checkInitialization(builder, "hc_nodereplacechildoldchildnonexistent") != null) return;
+ var doc;
+ var oldChild;
+ var newChild;
+ var elementList;
+ var elementNode;
+ var replacedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newChild = doc.createElement("br");
+ oldChild = doc.createElement("b");
+ elementList = doc.getElementsByTagName("p");
+ elementNode = elementList.item(1);
+
+ {
+ success = false;
+ try {
+ replacedNode = elementNode.replaceChild(newChild,oldChild);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 8);
+ }
+ assertTrue("throw_NOT_FOUND_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodereplacechildoldchildnonexistent();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute-expected.txt
new file mode 100644
index 0000000..a8f60ee
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodetextnodeattribute
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute.html b/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute.html
new file mode 100644
index 0000000..8eb486e2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodetextnodeattribute.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute.js b/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute.js
new file mode 100644
index 0000000..fd1f751
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodeattribute.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodetextnodeattribute";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The "getAttributes()" method invoked on a Text
+Node returns null.
+
+Retrieve the Text node from the last child of the
+first employee and invoke the "getAttributes()" method
+on the Text Node. It should return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-84CF096
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1312295772
+*/
+function hc_nodetextnodeattribute() {
+ var success;
+ if(checkInitialization(builder, "hc_nodetextnodeattribute") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var textNode;
+ var attrList;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(0);
+ textNode = testAddr.firstChild;
+
+ attrList = textNode.attributes;
+
+ assertNull("text_attributes_is_null",attrList);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodetextnodeattribute();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodename-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodetextnodename-expected.txt
new file mode 100644
index 0000000..59dbd4c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodename-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodetextnodename
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodename.html b/LayoutTests/dom/html/level1/core/hc_nodetextnodename.html
new file mode 100644
index 0000000..4ad337e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodename.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodetextnodename.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodename.js b/LayoutTests/dom/html/level1/core/hc_nodetextnodename.js
new file mode 100644
index 0000000..bad6607
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodename.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodetextnodename";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeName()" method for a
+ Text Node is "#text".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D095
+*/
+function hc_nodetextnodename() {
+ var success;
+ if(checkInitialization(builder, "hc_nodetextnodename") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var textNode;
+ var textName;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(0);
+ textNode = testAddr.firstChild;
+
+ textName = textNode.nodeName;
+
+ assertEquals("textNodeName","#text",textName);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodetextnodename();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodetype-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodetextnodetype-expected.txt
new file mode 100644
index 0000000..2d3450e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodetype-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodetextnodetype
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodetype.html b/LayoutTests/dom/html/level1/core/hc_nodetextnodetype.html
new file mode 100644
index 0000000..472e3cc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodetype.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodetextnodetype.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodetype.js b/LayoutTests/dom/html/level1/core/hc_nodetextnodetype.js
new file mode 100644
index 0000000..43c358d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodetype.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodetextnodetype";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+ The "getNodeType()" method for a Text Node
+
+ returns the constant value 3.
+
+
+
+ Retrieve the Text node from the last child of
+
+ the first employee and invoke the "getNodeType()"
+
+ method. The method should return 3.
+
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-111237558
+*/
+function hc_nodetextnodetype() {
+ var success;
+ if(checkInitialization(builder, "hc_nodetextnodetype") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var textNode;
+ var nodeType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(0);
+ textNode = testAddr.firstChild;
+
+ nodeType = textNode.nodeType;
+
+ assertEquals("nodeTextNodeTypeAssert1",3,nodeType);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodetextnodetype();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue-expected.txt
new file mode 100644
index 0000000..9610f47
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodetextnodevalue
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue.html b/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue.html
new file mode 100644
index 0000000..b4038d1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodetextnodevalue.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue.js b/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue.js
new file mode 100644
index 0000000..1a1ec4b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodetextnodevalue.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodetextnodevalue";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The string returned by the "getNodeValue()" method for a
+ Text Node is the content of the Text node.
+
+ Retrieve the Text node from the last child of the first
+ employee and check the string returned by the
+ "getNodeValue()" method. It should be equal to
+ "1230 North Ave. Dallas, Texas 98551".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+*/
+function hc_nodetextnodevalue() {
+ var success;
+ if(checkInitialization(builder, "hc_nodetextnodevalue") != null) return;
+ var doc;
+ var elementList;
+ var testAddr;
+ var textNode;
+ var textValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ testAddr = elementList.item(0);
+ textNode = testAddr.firstChild;
+
+ textValue = textNode.nodeValue;
+
+ assertEquals("textNodeValue","1230 North Ave. Dallas, Texas 98551",textValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodetextnodevalue();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue01-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodevalue01-expected.txt
new file mode 100644
index 0000000..1ab9cc2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue01
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue01.html b/LayoutTests/dom/html/level1/core/hc_nodevalue01.html
new file mode 100644
index 0000000..102553e
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue01.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodevalue01.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue01.js b/LayoutTests/dom/html/level1/core/hc_nodevalue01.js
new file mode 100644
index 0000000..c632b22
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An element is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document
+*/
+function hc_nodevalue01() {
+ var success;
+ if(checkInitialization(builder, "hc_nodevalue01") != null) return;
+ var doc;
+ var newNode;
+ var newValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newNode = doc.createElement("acronym");
+ newValue = newNode.nodeValue;
+
+ assertNull("initiallyNull",newValue);
+ newNode.nodeValue = "This should have no effect";
+
+ newValue = newNode.nodeValue;
+
+ assertNull("nullAfterAttemptedChange",newValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodevalue01();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue02-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodevalue02-expected.txt
new file mode 100644
index 0000000..08bca96
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue02
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue02.html b/LayoutTests/dom/html/level1/core/hc_nodevalue02.html
new file mode 100644
index 0000000..cf4e85c
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue02.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodevalue02.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue02.js b/LayoutTests/dom/html/level1/core/hc_nodevalue02.js
new file mode 100644
index 0000000..80682b9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An comment is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1728279322
+*/
+function hc_nodevalue02() {
+ var success;
+ if(checkInitialization(builder, "hc_nodevalue02") != null) return;
+ var doc;
+ var newNode;
+ var newValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newNode = doc.createComment("This is a new Comment node");
+ newValue = newNode.nodeValue;
+
+ assertEquals("initial","This is a new Comment node",newValue);
+ newNode.nodeValue = "This should have an effect";
+
+ newValue = newNode.nodeValue;
+
+ assertEquals("afterChange","This should have an effect",newValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodevalue02();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue03-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodevalue03-expected.txt
new file mode 100644
index 0000000..c70c7c3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue03
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue03.html b/LayoutTests/dom/html/level1/core/hc_nodevalue03.html
new file mode 100644
index 0000000..b8046f1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue03.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodevalue03.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue03.js b/LayoutTests/dom/html/level1/core/hc_nodevalue03.js
new file mode 100644
index 0000000..e61671a
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue03.js
@@ -0,0 +1,138 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An entity reference is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-11C98490
+*/
+function hc_nodevalue03() {
+ var success;
+ if(checkInitialization(builder, "hc_nodevalue03") != null) return;
+ var doc;
+ var newNode;
+ var newValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+
+ {
+ success = false;
+ try {
+ newNode = doc.createEntityReference("ent1");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 9);
+ }
+ assertTrue("throw_NOT_SUPPORTED_ERR",success);
+ }
+
+ }
+
+ else {
+ newNode = doc.createEntityReference("ent1");
+ assertNotNull("createdEntRefNotNull",newNode);
+newValue = newNode.nodeValue;
+
+ assertNull("initiallyNull",newValue);
+ newNode.nodeValue = "This should have no effect";
+
+ newValue = newNode.nodeValue;
+
+ assertNull("nullAfterAttemptedChange",newValue);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodevalue03();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue04-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodevalue04-expected.txt
new file mode 100644
index 0000000..6cf28d9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue04
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue04.html b/LayoutTests/dom/html/level1/core/hc_nodevalue04.html
new file mode 100644
index 0000000..2e0e312
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue04.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodevalue04.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue04.js b/LayoutTests/dom/html/level1/core/hc_nodevalue04.js
new file mode 100644
index 0000000..40ceb64
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue04.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An document type accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A31
+*/
+function hc_nodevalue04() {
+ var success;
+ if(checkInitialization(builder, "hc_nodevalue04") != null) return;
+ var doc;
+ var newNode;
+ var newValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newNode = doc.doctype;
+
+ assertTrue("docTypeNotNullOrDocIsHTML",
+
+ (
+ (newNode != null)
+ ||
+ (builder.contentType == "text/html")
+)
+);
+
+ if(
+
+ (newNode != null)
+
+ ) {
+ assertNotNull("docTypeNotNull",newNode);
+newValue = newNode.nodeValue;
+
+ assertNull("initiallyNull",newValue);
+ newNode.nodeValue = "This should have no effect";
+
+ newValue = newNode.nodeValue;
+
+ assertNull("nullAfterAttemptedChange",newValue);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodevalue04();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue05-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodevalue05-expected.txt
new file mode 100644
index 0000000..cf46b32
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue05
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue05.html b/LayoutTests/dom/html/level1/core/hc_nodevalue05.html
new file mode 100644
index 0000000..edb2730
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue05.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodevalue05.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue05.js b/LayoutTests/dom/html/level1/core/hc_nodevalue05.js
new file mode 100644
index 0000000..34e2e33
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue05.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+A document fragment is created, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-B63ED1A3
+*/
+function hc_nodevalue05() {
+ var success;
+ if(checkInitialization(builder, "hc_nodevalue05") != null) return;
+ var doc;
+ var newNode;
+ var newValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ newNode = doc.createDocumentFragment();
+ newValue = newNode.nodeValue;
+
+ assertNull("initiallyNull",newValue);
+ newNode.nodeValue = "This should have no effect";
+
+ newValue = newNode.nodeValue;
+
+ assertNull("nullAfterAttemptedChange",newValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodevalue05();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue06-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodevalue06-expected.txt
new file mode 100644
index 0000000..3616491
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue06
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue06.html b/LayoutTests/dom/html/level1/core/hc_nodevalue06.html
new file mode 100644
index 0000000..b5235f3
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue06.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodevalue06.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue06.js b/LayoutTests/dom/html/level1/core/hc_nodevalue06.js
new file mode 100644
index 0000000..6cb9ac7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue06.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var newNodeRef = null;
+ if (typeof(this.newNode) != 'undefined') {
+ newNodeRef = this.newNode;
+ }
+ docsLoaded += preload(newNodeRef, "newNode", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An document is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#i-Document
+*/
+function hc_nodevalue06() {
+ var success;
+ if(checkInitialization(builder, "hc_nodevalue06") != null) return;
+ var newNode;
+ var newValue;
+
+ var newNodeRef = null;
+ if (typeof(this.newNode) != 'undefined') {
+ newNodeRef = this.newNode;
+ }
+ newNode = load(newNodeRef, "newNode", "hc_staff");
+ newValue = newNode.nodeValue;
+
+ assertNull("initiallyNull",newValue);
+ newNode.nodeValue = "This should have no effect";
+
+ newValue = newNode.nodeValue;
+
+ assertNull("nullAfterAttemptedChange",newValue);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodevalue06();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue07-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodevalue07-expected.txt
new file mode 100644
index 0000000..5876edf
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue07
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue07.html b/LayoutTests/dom/html/level1/core/hc_nodevalue07.html
new file mode 100644
index 0000000..1a635b8
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue07.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodevalue07.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue07.js b/LayoutTests/dom/html/level1/core/hc_nodevalue07.js
new file mode 100644
index 0000000..867a682
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue07.js
@@ -0,0 +1,134 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An Entity is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-527DCFF2
+*/
+function hc_nodevalue07() {
+ var success;
+ if(checkInitialization(builder, "hc_nodevalue07") != null) return;
+ var doc;
+ var newNode;
+ var newValue;
+ var nodeMap;
+ var docType;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+nodeMap = docType.entities;
+
+ assertNotNull("entitiesNotNull",nodeMap);
+newNode = nodeMap.getNamedItem("alpha");
+ assertNotNull("entityNotNull",newNode);
+newValue = newNode.nodeValue;
+
+ assertNull("initiallyNull",newValue);
+ newNode.nodeValue = "This should have no effect";
+
+ newValue = newNode.nodeValue;
+
+ assertNull("nullAfterAttemptedChange",newValue);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodevalue07();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue08-expected.txt b/LayoutTests/dom/html/level1/core/hc_nodevalue08-expected.txt
new file mode 100644
index 0000000..6c332e5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue08
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue08.html b/LayoutTests/dom/html/level1/core/hc_nodevalue08.html
new file mode 100644
index 0000000..75bea5d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue08.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodevalue08.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_nodevalue08.js b/LayoutTests/dom/html/level1/core/hc_nodevalue08.js
new file mode 100644
index 0000000..6bbab84
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_nodevalue08.js
@@ -0,0 +1,134 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_nodevalue08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An notation is accessed, setNodeValue is called with a non-null argument, but getNodeValue
+should still return null.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5431D1B9
+*/
+function hc_nodevalue08() {
+ var success;
+ if(checkInitialization(builder, "hc_nodevalue08") != null) return;
+ var doc;
+ var docType;
+ var newNode;
+ var newValue;
+ var nodeMap;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+nodeMap = docType.notations;
+
+ assertNotNull("notationsNotNull",nodeMap);
+newNode = nodeMap.getNamedItem("notation1");
+ assertNotNull("notationNotNull",newNode);
+newValue = newNode.nodeValue;
+
+ assertNull("initiallyNull",newValue);
+ newNode.nodeValue = "This should have no effect";
+
+ newValue = newNode.nodeValue;
+
+ assertNull("nullAfterAttemptedChange",newValue);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_nodevalue08();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1-expected.txt b/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1-expected.txt
new file mode 100644
index 0000000..688f638
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_notationsremovenameditem1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1.html b/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1.html
new file mode 100644
index 0000000..e5478d4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_notationsremovenameditem1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1.js b/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1.js
new file mode 100644
index 0000000..28d3cc6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_notationsremovenameditem1.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_notationsremovenameditem1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An attempt to add remove an notation should result in a NO_MODIFICATION_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D46829EF
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D58B193
+*/
+function hc_notationsremovenameditem1() {
+ var success;
+ if(checkInitialization(builder, "hc_notationsremovenameditem1") != null) return;
+ var doc;
+ var notations;
+ var docType;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+notations = docType.notations;
+
+ assertNotNull("notationsNotNull",notations);
+
+ {
+ success = false;
+ try {
+ retval = notations.removeNamedItem("notation1");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 7);
+ }
+ assertTrue("throw_NO_MODIFICATION_ALLOWED_ERR",success);
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_notationsremovenameditem1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1-expected.txt b/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1-expected.txt
new file mode 100644
index 0000000..66419be
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_notationssetnameditem1
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1.html b/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1.html
new file mode 100644
index 0000000..c172478
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_notationssetnameditem1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1.js b/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1.js
new file mode 100644
index 0000000..0ae1333
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_notationssetnameditem1.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_notationssetnameditem1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("XML", null);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An attempt to add an element to the named node map returned by notations should
+result in a NO_MODIFICATION_ERR or HIERARCHY_REQUEST_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-D46829EF
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+*/
+function hc_notationssetnameditem1() {
+ var success;
+ if(checkInitialization(builder, "hc_notationssetnameditem1") != null) return;
+ var doc;
+ var notations;
+ var docType;
+ var retval;
+ var elem;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+notations = docType.notations;
+
+ assertNotNull("notationsNotNull",notations);
+elem = doc.createElement("br");
+
+ try {
+ retval = notations.setNamedItem(elem);
+ fail("throw_HIER_OR_NO_MOD_ERR");
+
+ } catch (ex) {
+ if (typeof(ex.code) != 'undefined') {
+ switch(ex.code) {
+ case /* HIERARCHY_REQUEST_ERR */ 3 :
+ break;
+ case /* NO_MODIFICATION_ALLOWED_ERR */ 7 :
+ break;
+ default:
+ throw ex;
+ }
+ } else {
+ throw ex;
+ }
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_notationssetnameditem1();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset-expected.txt b/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset-expected.txt
new file mode 100644
index 0000000..98e2601
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textindexsizeerrnegativeoffset
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset.html b/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset.html
new file mode 100644
index 0000000..56485c6
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_textindexsizeerrnegativeoffset.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset.js b/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset.js
new file mode 100644
index 0000000..965648b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textindexsizeerrnegativeoffset.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textindexsizeerrnegativeoffset";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ setImplementationAttribute("signed", true);
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "splitText(offset)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset is
+ negative.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The desired exception should be raised since the offset
+ is a negative number.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-38853C1D')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function hc_textindexsizeerrnegativeoffset() {
+ var success;
+ if(checkInitialization(builder, "hc_textindexsizeerrnegativeoffset") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var textNode;
+ var splitNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(2);
+ textNode = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ splitNode = textNode.splitText(-69);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throws_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_textindexsizeerrnegativeoffset();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds-expected.txt b/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds-expected.txt
new file mode 100644
index 0000000..cf61411
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textindexsizeerroffsetoutofbounds
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds.html b/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds.html
new file mode 100644
index 0000000..d61e189
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_textindexsizeerroffsetoutofbounds.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds.js b/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds.js
new file mode 100644
index 0000000..170d435
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textindexsizeerroffsetoutofbounds.js
@@ -0,0 +1,131 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textindexsizeerroffsetoutofbounds";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "splitText(offset)" method raises an
+ INDEX_SIZE_ERR DOMException if the specified offset is
+ greater than the number of characters in the Text node.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The desired exception should be raised since the offset
+ is a greater than the number of characters in the Text
+ node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-38853C1D')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=249
+*/
+function hc_textindexsizeerroffsetoutofbounds() {
+ var success;
+ if(checkInitialization(builder, "hc_textindexsizeerroffsetoutofbounds") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var textNode;
+ var splitNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(2);
+ textNode = nameNode.firstChild;
+
+
+ {
+ success = false;
+ try {
+ splitNode = textNode.splitText(300);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("throw_INDEX_SIZE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_textindexsizeerroffsetoutofbounds();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements-expected.txt b/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements-expected.txt
new file mode 100644
index 0000000..6b676a9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textparseintolistofelements
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements.html b/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements.html
new file mode 100644
index 0000000..cc6f03d
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_textparseintolistofelements.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements.js b/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements.js
new file mode 100644
index 0000000..71d362f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textparseintolistofelements.js
@@ -0,0 +1,169 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textparseintolistofelements";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the textual data from the last child of the
+ second employee. That node is composed of two
+ EntityReference nodes and two Text nodes. After
+ the content node is parsed, the "acronym" Element
+ should contain four children with each one of the
+ EntityReferences containing one child.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1451460987
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-11C98490
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-745549614
+*/
+function hc_textparseintolistofelements() {
+ var success;
+ if(checkInitialization(builder, "hc_textparseintolistofelements") != null) return;
+ var doc;
+ var elementList;
+ var addressNode;
+ var childList;
+ var child;
+ var value;
+ var grandChild;
+ var length;
+ var result = new Array();
+
+ expectedNormal = new Array();
+ expectedNormal[0] = "β";
+ expectedNormal[1] = " Dallas, ";
+ expectedNormal[2] = "γ";
+ expectedNormal[3] = "\n 98554";
+
+ expectedExpanded = new Array();
+ expectedExpanded[0] = "β Dallas, γ\n 98554";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ addressNode = elementList.item(1);
+ childList = addressNode.childNodes;
+
+ length = childList.length;
+
+ for(var indexN1007C = 0;indexN1007C < childList.length; indexN1007C++) {
+ child = childList.item(indexN1007C);
+ value = child.nodeValue;
+
+
+ if(
+
+ (value == null)
+
+ ) {
+ grandChild = child.firstChild;
+
+ assertNotNull("grandChildNotNull",grandChild);
+value = grandChild.nodeValue;
+
+ result[result.length] = value;
+
+ }
+
+ else {
+ result[result.length] = value;
+
+ }
+
+ }
+
+ if(
+ (1 == length)
+ ) {
+ assertEqualsList("assertEqCoalescing",expectedExpanded,result);
+
+ }
+
+ else {
+ assertEqualsList("assertEqNormal",expectedNormal,result);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_textparseintolistofelements();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextfour-expected.txt b/LayoutTests/dom/html/level1/core/hc_textsplittextfour-expected.txt
new file mode 100644
index 0000000..7e84360
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextfour-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textsplittextfour
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextfour.html b/LayoutTests/dom/html/level1/core/hc_textsplittextfour.html
new file mode 100644
index 0000000..b608b30
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextfour.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_textsplittextfour.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextfour.js b/LayoutTests/dom/html/level1/core/hc_textsplittextfour.js
new file mode 100644
index 0000000..ece64c2
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextfour.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textsplittextfour";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "splitText(offset)" method returns the new Text node.
+
+ Retrieve the textual data from the last child of the
+ first employee and invoke the "splitText(offset)" method.
+ The method should return the new Text node. The offset
+ value used for this test is 30. The "getNodeValue()"
+ method is called to check that the new node now contains
+ the characters at and after position 30.
+ (Starting count at 0)
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D
+*/
+function hc_textsplittextfour() {
+ var success;
+ if(checkInitialization(builder, "hc_textsplittextfour") != null) return;
+ var doc;
+ var elementList;
+ var addressNode;
+ var textNode;
+ var splitNode;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("acronym");
+ addressNode = elementList.item(0);
+ textNode = addressNode.firstChild;
+
+ splitNode = textNode.splitText(30);
+ value = splitNode.nodeValue;
+
+ assertEquals("textSplitTextFourAssert","98551",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_textsplittextfour();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextone-expected.txt b/LayoutTests/dom/html/level1/core/hc_textsplittextone-expected.txt
new file mode 100644
index 0000000..820c6e4
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextone-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textsplittextone
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextone.html b/LayoutTests/dom/html/level1/core/hc_textsplittextone.html
new file mode 100644
index 0000000..85a166f
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextone.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_textsplittextone.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextone.js b/LayoutTests/dom/html/level1/core/hc_textsplittextone.js
new file mode 100644
index 0000000..2e089c5
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextone.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textsplittextone";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The "splitText(offset)" method breaks the Text node into
+ two Text nodes at the specified offset keeping each node
+ as siblings in the tree.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The method splits the Text node into two new sibling
+ Text nodes keeping both of them in the tree. This test
+ checks the "nextSibling()" method of the original node
+ to ensure that the two nodes are indeed siblings.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D
+*/
+function hc_textsplittextone() {
+ var success;
+ if(checkInitialization(builder, "hc_textsplittextone") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var textNode;
+ var splitNode;
+ var secondPart;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(2);
+ textNode = nameNode.firstChild;
+
+ splitNode = textNode.splitText(7);
+ secondPart = textNode.nextSibling;
+
+ value = secondPart.nodeValue;
+
+ assertEquals("textSplitTextOneAssert","Jones",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_textsplittextone();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextthree-expected.txt b/LayoutTests/dom/html/level1/core/hc_textsplittextthree-expected.txt
new file mode 100644
index 0000000..4cc03f7
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextthree-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textsplittextthree
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextthree.html b/LayoutTests/dom/html/level1/core/hc_textsplittextthree.html
new file mode 100644
index 0000000..1cee22b
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextthree.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_textsplittextthree.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittextthree.js b/LayoutTests/dom/html/level1/core/hc_textsplittextthree.js
new file mode 100644
index 0000000..6992628
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittextthree.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textsplittextthree";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ After the "splitText(offset)" method breaks the Text node
+ into two Text nodes, the new Text node contains all the
+ content at and after the offset point.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The new Text node should contain all the content
+ at and after the offset point. The "getNodeValue()"
+ method is called to check that the new node now contains
+ the characters at and after position seven.
+ (Starting count at 0)
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D
+*/
+function hc_textsplittextthree() {
+ var success;
+ if(checkInitialization(builder, "hc_textsplittextthree") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var textNode;
+ var splitNode;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(2);
+ textNode = nameNode.firstChild;
+
+ splitNode = textNode.splitText(6);
+ value = splitNode.nodeValue;
+
+ assertEquals("textSplitTextThreeAssert"," Jones",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_textsplittextthree();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittexttwo-expected.txt b/LayoutTests/dom/html/level1/core/hc_textsplittexttwo-expected.txt
new file mode 100644
index 0000000..57f63dc
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittexttwo-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textsplittexttwo
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittexttwo.html b/LayoutTests/dom/html/level1/core/hc_textsplittexttwo.html
new file mode 100644
index 0000000..1749779
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittexttwo.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_textsplittexttwo.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_textsplittexttwo.js b/LayoutTests/dom/html/level1/core/hc_textsplittexttwo.js
new file mode 100644
index 0000000..8778694
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textsplittexttwo.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textsplittexttwo";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ After the "splitText(offset)" method breaks the Text node
+ into two Text nodes, the original node contains all the
+ content up to the offset point.
+
+ Retrieve the textual data from the second child of the
+ third employee and invoke the "splitText(offset)" method.
+ The original Text node should contain all the content
+ up to the offset point. The "getNodeValue()" method
+ is called to check that the original node now contains
+ the first five characters.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-38853C1D
+*/
+function hc_textsplittexttwo() {
+ var success;
+ if(checkInitialization(builder, "hc_textsplittexttwo") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var textNode;
+ var splitNode;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(2);
+ textNode = nameNode.firstChild;
+
+ splitNode = textNode.splitText(5);
+ value = textNode.nodeValue;
+
+ assertEquals("textSplitTextTwoAssert","Roger",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_textsplittexttwo();
+}
diff --git a/LayoutTests/dom/html/level1/core/hc_textwithnomarkup-expected.txt b/LayoutTests/dom/html/level1/core/hc_textwithnomarkup-expected.txt
new file mode 100644
index 0000000..26539da
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textwithnomarkup-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textwithnomarkup
+Status: Success
diff --git a/LayoutTests/dom/html/level1/core/hc_textwithnomarkup.html b/LayoutTests/dom/html/level1/core/hc_textwithnomarkup.html
new file mode 100644
index 0000000..490afdd
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textwithnomarkup.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_textwithnomarkup.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level1/core/hc_textwithnomarkup.js b/LayoutTests/dom/html/level1/core/hc_textwithnomarkup.js
new file mode 100644
index 0000000..2b3bae9
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/hc_textwithnomarkup.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/hc_textwithnomarkup";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ If there is not any markup inside an Element or Attr node
+ content, then the text is contained in a single object
+ implementing the Text interface that is the only child
+ of the element.
+
+ Retrieve the textual data from the second child of the
+ third employee. That Text node contains a block of
+ multiple text lines without markup, so they should be
+ treated as a single Text node. The "getNodeValue()"
+ method should contain the combination of the two lines.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1312295772
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-F68D080
+*/
+function hc_textwithnomarkup() {
+ var success;
+ if(checkInitialization(builder, "hc_textwithnomarkup") != null) return;
+ var doc;
+ var elementList;
+ var nameNode;
+ var nodeV;
+ var value;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("strong");
+ nameNode = elementList.item(2);
+ nodeV = nameNode.firstChild;
+
+ value = nodeV.nodeValue;
+
+ assertEquals("textWithNoMarkupAssert","Roger\n Jones",value);
+
+}
+
+
+
+
+function runTest() {
+ hc_textwithnomarkup();
+}
diff --git a/LayoutTests/dom/html/level1/core/resources/COPYRIGHT.html b/LayoutTests/dom/html/level1/core/resources/COPYRIGHT.html
new file mode 100644
index 0000000..d03a7da
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/resources/COPYRIGHT.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
+ <title>W3C IPR SOFTWARE NOTICE</title>
+<style type="text/css">
+<!--
+html, body { background: #fff; color: #000; } /* body for Windows IE3 */
+-->
+</style>
+ </head>
+ <body>
+ <h1>
+ W3C IPR SOFTWARE NOTICE
+ </h1>
+ <h3>
+ Copyright &copy; 2002-2004 <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved.
+ </h3>
+ <p>
+ The DOM Conformance Test Suite for Level 1 core is published under
+ the W3C Software Copyright Notice and License. The software
+ license requires "Notice of any changes or modifications to the
+ W3C files, including the date changes were made." Consequently,
+ modified versions of the DOM ECMAScript or Java tests must
+ document that they do not conform to the DOM Conformance Test
+ Suites; in the case of the Java language binding, the package
+ names can no longer be in the 'org.w3c' package.
+ </p>
+ <p>
+ <b>Note:</b> The original version of the W3C Software Copyright Notice
+ and License could be found at <a
+ href='http://www.w3.org/Consortium/Legal/copyright-software-19980720'>http://www.w3.org/Consortium/Legal/copyright-software-19980720</a>
+ </p>
+ <h3>
+ Copyright &copy; 1994-2004 <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved. http://www.w3.org/Consortium/Legal/
+ </h3>
+ <p>
+ This W3C work (including software, documents, or other related items) is
+ being provided by the copyright holders under the following license. By
+ obtaining, using and/or copying this work, you (the licensee) agree that
+ you have read, understood, and will comply with the following terms and
+ conditions:
+ </p>
+ <p>
+ Permission to use, copy, and modify this software and its documentation,
+ with or without modification,&nbsp; for any purpose and without fee or
+ royalty is hereby granted, provided that you include the following on ALL
+ copies of the software and documentation or portions thereof, including
+ modifications, that you make:
+ </p>
+ <ol>
+ <li>
+ The full text of this NOTICE in a location viewable to users of the
+ redistributed or derivative work.
+ </li>
+ <li>
+ Any pre-existing intellectual property disclaimers, notices, or terms
+ and conditions. If none exist, a short notice of the following form
+ (hypertext is preferred, text is permitted) should be used within the
+ body of any redistributed or derivative code: "Copyright &copy;
+ [$date-of-software] <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved. http://www.w3.org/Consortium/Legal/"
+ </li>
+ <li>
+ Notice of any changes or modifications to the W3C files, including the
+ date changes were made. (We recommend you provide URIs to the location
+ from which the code is derived.)
+ </li>
+ </ol>
+ <p>
+ THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT
+ HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED,
+ INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS
+ FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR
+ DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
+ TRADEMARKS OR OTHER RIGHTS.
+ </p>
+ <p>
+ COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
+ CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
+ DOCUMENTATION.
+ </p>
+ <p>
+ The name and trademarks of copyright holders may NOT be used in
+ advertising or publicity pertaining to the software without specific,
+ written prior permission. Title to copyright in this software and any
+ associated documentation will at all times remain with copyright
+ holders.
+ </p>
+ </body>
+</html>
diff --git a/LayoutTests/dom/html/level1/core/selfhtml.js b/LayoutTests/dom/html/level1/core/selfhtml.js
new file mode 100644
index 0000000..06b0cc1
--- /dev/null
+++ b/LayoutTests/dom/html/level1/core/selfhtml.js
@@ -0,0 +1,721 @@
+/*
+Copyright (c) 2001-2005 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+ function assertSize(descr, expected, actual) {
+ var actualSize;
+ assertNotNull(descr, actual);
+ actualSize = actual.length;
+ assertEquals(descr, expected, actualSize);
+ }
+
+ function assertEqualsAutoCase(context, descr, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if(context == "attribute") {
+ assertEquals(descr, expected.toLowerCase(), actual.toLowerCase());
+ } else {
+ assertEquals(descr, expected.toUpperCase(), actual);
+ }
+ } else {
+ assertEquals(descr, expected, actual);
+ }
+ }
+
+
+ function assertEqualsCollectionAutoCase(context, descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ if (expectedValue.toLowerCase() == actual[j].toLowerCase()) {
+ matches++;
+ }
+ } else {
+ if (expectedValue.toUpperCase() == actual[j]) {
+ matches++;
+ }
+ }
+ } else {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+ function assertEqualsCollection(descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+
+ function assertEqualsListAutoCase(context, descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ assertEqualsAutoCase(context, descr, expected[i], actual[i]);
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+
+ function assertEqualsList(descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ if(expected[i] != actual[i]) {
+ assertEquals(descr, expected[i], actual[i]);
+ }
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+ function assertInstanceOf(descr, type, obj) {
+ if(type == "Attr") {
+ assertEquals(descr,2,obj.nodeType);
+ var specd = obj.specified;
+ }
+ }
+
+ function assertSame(descr, expected, actual) {
+ if(expected != actual) {
+ assertEquals(descr, expected.nodeType, actual.nodeType);
+ assertEquals(descr, expected.nodeValue, actual.nodeValue);
+ }
+ }
+
+ function assertURIEquals(assertID, scheme, path, host, file, name, query, fragment, isAbsolute, actual) {
+ //
+ // URI must be non-null
+ assertNotNull(assertID, actual);
+
+ var uri = actual;
+
+ var lastPound = actual.lastIndexOf("#");
+ var actualFragment = "";
+ if(lastPound != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastPound);
+ actualFragment = actual.substring(lastPound+1);
+ }
+ if(fragment != null) assertEquals(assertID,fragment, actualFragment);
+
+ var lastQuestion = uri.lastIndexOf("?");
+ var actualQuery = "";
+ if(lastQuestion != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastQuestion);
+ actualQuery = actual.substring(lastQuestion+1);
+ }
+ if(query != null) assertEquals(assertID, query, actualQuery);
+
+ var firstColon = uri.indexOf(":");
+ var firstSlash = uri.indexOf("/");
+ var actualPath = uri;
+ var actualScheme = "";
+ if(firstColon != -1 && firstColon < firstSlash) {
+ actualScheme = uri.substring(0,firstColon);
+ actualPath = uri.substring(firstColon + 1);
+ }
+
+ if(scheme != null) {
+ assertEquals(assertID, scheme, actualScheme);
+ }
+
+ if(path != null) {
+ assertEquals(assertID, path, actualPath);
+ }
+
+ if(host != null) {
+ var actualHost = "";
+ if(actualPath.substring(0,2) == "//") {
+ var termSlash = actualPath.substring(2).indexOf("/") + 2;
+ actualHost = actualPath.substring(0,termSlash);
+ }
+ assertEquals(assertID, host, actualHost);
+ }
+
+ if(file != null || name != null) {
+ var actualFile = actualPath;
+ var finalSlash = actualPath.lastIndexOf("/");
+ if(finalSlash != -1) {
+ actualFile = actualPath.substring(finalSlash+1);
+ }
+ if (file != null) {
+ assertEquals(assertID, file, actualFile);
+ }
+ if (name != null) {
+ var actualName = actualFile;
+ var finalDot = actualFile.lastIndexOf(".");
+ if (finalDot != -1) {
+ actualName = actualName.substring(0, finalDot);
+ }
+ assertEquals(assertID, name, actualName);
+ }
+ }
+
+ if(isAbsolute != null) {
+ assertEquals(assertID, isAbsolute, actualPath.substring(0,1) == "/");
+ }
+ }
+
+
+// size() used by assertSize element
+function size(collection)
+{
+ return collection.length;
+}
+
+function same(expected, actual)
+{
+ return expected === actual;
+}
+
+function equalsAutoCase(context, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ return expected.toLowerCase() == actual;
+ }
+ return expected.toUpperCase() == actual;
+ }
+ return expected == actual;
+}
+
+function createTempURI(scheme) {
+ if (scheme == "http") {
+ return "http://localhost:8080/webdav/tmp" + Math.floor(Math.random() * 100000) + ".xml";
+ }
+ return "file:///tmp/domts" + Math.floor(Math.random() * 100000) + ".xml";
+}
+
+
+
+function EventMonitor() {
+ this.atEvents = new Array();
+ this.bubbledEvents = new Array();
+ this.capturedEvents = new Array();
+ this.allEvents = new Array();
+}
+
+EventMonitor.prototype.handleEvent = function(evt) {
+ switch(evt.eventPhase) {
+ case 1:
+ monitor.capturedEvents[monitor.capturedEvents.length] = evt;
+ break;
+
+ case 2:
+ monitor.atEvents[monitor.atEvents.length] = evt;
+ break;
+
+ case 3:
+ monitor.bubbledEvents[monitor.bubbledEvents.length] = evt;
+ break;
+ }
+ monitor.allEvents[monitor.allEvents.length] = evt;
+}
+
+function DOMErrorImpl(err) {
+ this.severity = err.severity;
+ this.message = err.message;
+ this.type = err.type;
+ this.relatedException = err.relatedException;
+ this.relatedData = err.relatedData;
+ this.location = err.location;
+}
+
+
+
+function DOMErrorMonitor() {
+ this.allErrors = new Array();
+}
+
+DOMErrorMonitor.prototype.handleError = function(err) {
+ errorMonitor.allErrors[errorMonitor.allErrors.length] = new DOMErrorImpl(err);
+}
+
+DOMErrorMonitor.prototype.assertLowerSeverity = function(id, severity) {
+ var i;
+ for (i = 0; i < this.allErrors.length; i++) {
+ if (this.allErrors[i].severity >= severity) {
+ assertEquals(id, severity - 1, this.allErrors[i].severity);
+ }
+ }
+}
+
+function UserDataNotification(operation, key, data, src, dst) {
+ this.operation = operation;
+ this.key = key;
+ this.data = data;
+ this.src = src;
+ this.dst = dst;
+}
+
+function UserDataMonitor() {
+ this.allNotifications = new Array();
+}
+
+UserDataMonitor.prototype.handle = function(operation, key, data, src, dst) {
+ userDataMonitor.allNotifications[userDataMonitor.allNotifications.length] =
+ new UserDataNotification(operation, key, data, src, dst);
+}
+
+
+
+function HTMLBuilder() {
+ this.contentType = "text/html";
+ this.supportedContentTypes = [ "text/html" ];
+
+ this.supportsAsyncChange = false;
+ this.async = false;
+ this.fixedAttributeNames = [
+ "validating", "expandEntityReferences", "coalescing",
+ "signed", "hasNullString", "ignoringElementContentWhitespace", "namespaceAware", "ignoringComments", "schemaValidating"];
+
+ this.fixedAttributeValues = [false, true, false, true, true , false, false, false, false ];
+ this.configurableAttributeNames = [ ];
+ this.configurableAttributeValues = [ ];
+ this.initializationError = null;
+ this.initializationFatalError = null;
+ this.skipIncompatibleTests = true;
+ this.documentURLs = new Array();
+ this.documentVarnames = new Array();
+}
+
+HTMLBuilder.prototype.hasFeature = function(feature, version) {
+ return document.implementation.hasFeature(feature, version);
+}
+
+HTMLBuilder.prototype.getImplementation = function() {
+ return document.implementation;
+}
+
+HTMLBuilder.prototype.preload = function(frame, varname, url) {
+ var i;
+ this.documentVarnames[this.documentVarnames.length] = varname;
+ this.documentURLs[this.documentURLs.length] = url;
+ if (this.documentURLs.length > 1) {
+ //
+ // if all the urls are not the same
+ //
+ for (i = 1; i < this.documentURLs.length; i++) {
+ if (this.documentURLs[i] != this.documentURLs[0]) {
+ throw "Tests with multiple loads of different documents are not currently supported";
+ }
+ }
+ }
+ return 1;
+}
+
+HTMLBuilder.prototype.cloneNode = function(srcNode, doc) {
+ var clone = null;
+ switch(srcNode.nodeType) {
+ //
+ // element
+ case 1:
+ clone = doc.createElement(srcNode.nodeName.toLowerCase());
+ var attrs = srcNode.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+ var srcChild = srcNode.firstChild;
+ while(srcChild != null) {
+ var cloneChild = this.cloneNode(srcChild, doc);
+ if (cloneChild != null) {
+ clone.appendChild(cloneChild);
+ }
+ srcChild = srcChild.nextSibling;
+ }
+ break;
+
+ case 3:
+ clone = doc.createTextNode(srcNode.nodeValue);
+ break;
+
+ case 4:
+ clone = doc.createCDATASection(srcNode.nodeValue);
+ break;
+
+ case 7:
+ clone = doc.createProcessingInstruction(srcNode.nodeValue);
+ break;
+
+ case 8:
+ clone = doc.createComment(srcNode.nodeValue);
+ break;
+ }
+ return clone;
+
+}
+
+
+HTMLBuilder.prototype.load = function(frame, varname, url) {
+ if (this.documentVarnames[0] == varname) {
+ return document;
+ }
+ //
+ //
+ // not a perfect way to do this
+ // Document.cloneNode is implementation dependent but exists in L1
+ // and implemented in IE. The alternative brute force copy
+ // only works in L2 or higher implementations and can't copy
+ // entity and notation definitions, etc.
+ var clone = null;
+ try {
+ clone = document.cloneNode(true);
+ } catch(ex) {
+ }
+ if (clone == null) {
+ clone = document.implementation.createDocument(
+ document.documentElement.namespaceURI,
+ document.documentElement.nodeName,
+ null);
+ //
+ // Work-around since
+ // Safari does not create document element
+ // create document.
+ if (clone.documentElement == null) {
+ clone.appendChild(clone.createElement(document.documentElement.nodeName));
+ }
+ var attrs = document.documentElement.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.documentElement.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+
+ var srcNode = document.firstChild;
+ while(srcNode != null && srcNode.nodeType != 1) {
+ if (srcNode.nodeType != 10) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.insertBefore(cloneNode, clone.documentElement);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.nextSibling;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.appendChild(cloneNode);
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.firstChild;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ if (cloneNode != null) {
+ clone.documentElement.appendChild(cloneNode);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ }
+ return clone;
+}
+
+HTMLBuilder.prototype.getImplementationAttribute = function(attr) {
+ for (var i = 0; i < this.fixedAttributeNames.length; i++) {
+ if (this.fixedAttributeNames[i] == attr) {
+ return this.fixedAttributeValues[i];
+ }
+ }
+ throw "Unrecognized implementation attribute: " + attr;
+}
+
+
+HTMLBuilder.prototype.setImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ if (supported != value) {
+ this.initializationError = "HTML loader does not support " + attribute + "=" + value;
+ }
+}
+
+HTMLBuilder.prototype.canSetImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ return (supported == value);
+}
+
+
+
+
+function createConfiguredBuilder() {
+ return new HTMLBuilder();
+}
+
+function catchInitializationError(buildr, ex) {
+ buildr.initializationError = ex;
+ buildr.initializationFatalError = ex;
+}
+
+function toLowerArray(src) {
+ var newArray = new Array();
+ var i;
+ for (i = 0; i < src.length; i++) {
+ newArray[i] = src[i].toLowerCase();
+ }
+ return newArray;
+}
+
+
+function checkFeature(feature, version)
+{
+ if (!builder.hasFeature(feature, version))
+ {
+ //
+ // don't throw exception so that users can select to ignore the precondition
+ //
+ builder.initializationError = "builder does not support feature " + feature + " version " + version;
+ }
+}
+
+function setResult(resultType, message) {
+ var testName = getTargetURI();
+ document.open();
+ document.writeln("<html><head>");
+ document.writeln("<meta HTTP-EQUIV='Content-Type' CONTENT='text/html; CHARSET=utf-8'>");
+ document.write("<title>");
+ document.write(testName + ":" + resultType);
+ document.write("</title></head><body><table width='100%' border='1' style='color:");
+ if (resultType == null) {
+ document.writeln("green'><tr><td>Test:</td><td>" + testName + "</td></tr><tr><td>Status:</td><td>Success</td></tr>");
+ } else {
+ if (resultType == "skip") {
+ document.writeln("blue'><tr><td>Test:</td><td>" + testName + "</td></tr><tr><td>Status:</td><td>Skipped</td></tr>");
+ } else {
+ document.writeln("red'><tr><td>Test:</td><td>" + testName + "</td><td></tr><tr><td>Status:</td><td>" + resultType + "</td></tr>");
+ }
+ }
+ if (message != null) {
+ document.writeln("<tr><td>Detail:</td><td>" + message + "</td></tr>");
+ }
+ document.write("</table></body></html>");
+ document.close();
+ if (parent != window) {
+ parent.setResult(testName, resultType, message);
+ }
+}
+
+function checkInitialization(buildr, testname) {
+ return buildr.initializationError;
+}
+
+function preload(docRef, varname, href) {
+ return builder.preload(docRef, varname, href);
+}
+
+
+function load(docRef, varname, href) {
+ return builder.load(docRef, varname, href);
+}
+
+
+function getImplementationAttribute(attr) {
+ return builder.getImplementationAttribute(attr);
+}
+
+
+function setImplementationAttribute(attribute, value) {
+ builder.setImplementationAttribute(attribute, value);
+}
+
+function createXPathEvaluator(doc) {
+ try {
+ return doc.getFeature("XPath", null);
+ }
+ catch(ex) {
+ }
+ return doc;
+}
+
+
+function getImplementation() {
+ return builder.getImplementation();
+}
+
+function assertEquals(id, expected, actual) {
+ var myActual;
+ if (expected != actual) {
+ myActual = actual;
+ if (actual == null) {
+ myActual = "null";
+ }
+ throw "failure:" + id + ": assertEquals failed, actual " + myActual + ", expected " + expected + ".";
+ }
+}
+
+function assertNull(id, actual) {
+ if (actual != null) {
+ throw "failure:" + id + ": assertNull failed, actual " + actual;
+ }
+}
+
+
+function assertTrue(id, actual) {
+ if (!actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+
+function assertFalse(id, actual) {
+ if (actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+function assertNotNull(id, actual) {
+ if (actual == null) {
+ throw "failure:" + id + ": assertNotNull failed";
+ }
+}
+
+function fail(id) {
+ throw "failure:" + id + ": fail";
+}
+
+
+
+function getSuffix(contentType) {
+ switch(contentType) {
+ case "text/xml":
+ return ".xml";
+
+ case "application/xhtml+xml":
+ return ".xhtml";
+
+ case "image/svg+xml":
+ return ".svg";
+
+ case "text/mathml":
+ return ".mml";
+ }
+ return ".html";
+}
+
+
+function getResourceURI(name, scheme, contentType) {
+ var base = document.documentURI;
+ if (base == null) {
+ base = "";
+ } else {
+ base = base.substring(0, base.lastIndexOf('/') + 1) + "files/";
+ }
+ return base + name + getSuffix(contentType);
+}
+
+
+
+function startTest() {
+
+//
+// WebKit modification: 18-August-2005
+//
+// Inform the test controller that this test has a text-format result and so should
+// be dumped as text, and also that the dump should not occur automatically.
+//
+if (window.layoutTestController) {
+ layoutTestController.dumpAsText();
+ layoutTestController.waitUntilDone();
+}
+//
+// End WebKit modification
+//
+
+ //
+ // invoke test setup
+ //
+ setUpPage();
+
+ try {
+ runTest();
+ if (builder.initializationError == null) {
+ setResult(null, null);
+ } else {
+ setResult("skip", builder.initializationError);
+ }
+ } catch(ex) {
+ if (typeof(ex.substring) != 'undefined' && ex.substring(0, 8) == "failure:") {
+ setResult("failure", ex.substring(8));
+ } else {
+ setResult("error", ex);
+ }
+ }
+
+//
+// WebKit modification: 18-August-2005
+//
+// Inform the test controller that this test is complete, so it's time to dump.
+//
+ if (window.layoutTestController) {
+ layoutTestController.notifyDone();
+ }
+//
+// End WebKit modification
+//
+
+}
diff --git a/LayoutTests/dom/html/level2/core/createAttributeNS06-expected.txt b/LayoutTests/dom/html/level2/core/createAttributeNS06-expected.txt
new file mode 100644
index 0000000..cd129e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createAttributeNS06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/createAttributeNS06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/createAttributeNS06.html b/LayoutTests/dom/html/level2/core/createAttributeNS06.html
new file mode 100644
index 0000000..a8b546f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createAttributeNS06.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="createAttributeNS06.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/createAttributeNS06.js b/LayoutTests/dom/html/level2/core/createAttributeNS06.js
new file mode 100644
index 0000000..b788b3d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createAttributeNS06.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/createAttributeNS06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Document.createAttributeNS with an empty qualified name should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrAttrNS
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function createAttributeNS06() {
+ var success;
+ if(checkInitialization(builder, "createAttributeNS06") != null) return;
+ var namespaceURI = "http://www.example.com/";
+ var qualifiedName;
+ var doc;
+ var newAttr;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ {
+ success = false;
+ try {
+ newAttr = doc.createAttributeNS(namespaceURI,"");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ createAttributeNS06();
+}
diff --git a/LayoutTests/dom/html/level2/core/createDocument08-expected.txt b/LayoutTests/dom/html/level2/core/createDocument08-expected.txt
new file mode 100644
index 0000000..8548903
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createDocument08-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/createDocument08
+Status: failure
+Detail: throw_INVALID_CHARACTER_ERR: assertTrue failed
diff --git a/LayoutTests/dom/html/level2/core/createDocument08.html b/LayoutTests/dom/html/level2/core/createDocument08.html
new file mode 100644
index 0000000..5d333bb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createDocument08.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<html>
+<!--
+Copyright(c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>implementation</title>
+ <script type='text/javascript' src='selfhtml.js'></script>
+ <script type='text/javascript' charset='UTF-8' src='createDocument08.js'></script>
+ <script type='text/javascript'>function loadComplete() { startTest(); }</script>
+ </head>
+ <body onload="loadComplete()">
+ </body>
+</html>
+
+
diff --git a/LayoutTests/dom/html/level2/core/createDocument08.js b/LayoutTests/dom/html/level2/core/createDocument08.js
new file mode 100644
index 0000000..bcaacc1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createDocument08.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/createDocument08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ if (docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+DOMImplementation.createDocument with an empty qualified name should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function createDocument08() {
+ var success;
+ if(checkInitialization(builder, "createDocument08") != null) return;
+ var namespaceURI = "http://www.example.org/schema";
+ var docType = null;
+
+ var domImpl;
+ var aNewDoc;
+ var charact;
+ domImpl = getImplementation();
+
+ {
+ success = false;
+ try {
+ aNewDoc = domImpl.createDocument(namespaceURI,"",docType);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ createDocument08();
+}
diff --git a/LayoutTests/dom/html/level2/core/createDocumentType04-expected.txt b/LayoutTests/dom/html/level2/core/createDocumentType04-expected.txt
new file mode 100644
index 0000000..048d1ca
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createDocumentType04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/createDocumentType04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/createDocumentType04.html b/LayoutTests/dom/html/level2/core/createDocumentType04.html
new file mode 100644
index 0000000..51d8aab
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createDocumentType04.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<html>
+<!--
+Copyright(c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>implementation</title>
+ <script type='text/javascript' src='selfhtml.js'></script>
+ <script type='text/javascript' charset='UTF-8' src='createDocumentType04.js'></script>
+ <script type='text/javascript'>function loadComplete() { startTest(); }</script>
+ </head>
+ <body onload="loadComplete()">
+ </body>
+</html>
+
+
diff --git a/LayoutTests/dom/html/level2/core/createDocumentType04.js b/LayoutTests/dom/html/level2/core/createDocumentType04.js
new file mode 100644
index 0000000..d25f864
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createDocumentType04.js
@@ -0,0 +1,108 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/createDocumentType04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ if (docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+DOMImplementation.createDocumentType with an empty name should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-DOM-createDocType
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('Level-2-Core-DOM-createDocType')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function createDocumentType04() {
+ var success;
+ if(checkInitialization(builder, "createDocumentType04") != null) return;
+ var publicId = "http://www.example.com/";
+ var systemId = "myDoc.dtd";
+ var qualifiedName;
+ var docType = null;
+
+ var domImpl;
+ domImpl = getImplementation();
+
+ {
+ success = false;
+ try {
+ docType = domImpl.createDocumentType("",publicId,systemId);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ createDocumentType04();
+}
diff --git a/LayoutTests/dom/html/level2/core/createElementNS06.js b/LayoutTests/dom/html/level2/core/createElementNS06.js
new file mode 100644
index 0000000..e0dd3eb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/createElementNS06.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/createElementNS06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Document.createElementNS with an empty qualified name should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrElNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function createElementNS06() {
+ var success;
+ if(checkInitialization(builder, "createElementNS06") != null) return;
+ var namespaceURI = "http://www.example.com/";
+ var qualifiedName;
+ var doc;
+ var done;
+ var newElement;
+ var charact;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ {
+ success = false;
+ try {
+ newElement = doc.createElementNS(namespaceURI,"");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ createElementNS06();
+}
diff --git a/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1-expected.txt b/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1-expected.txt
new file mode 100644
index 0000000..3dcffbc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_entitiesremovenameditemns1
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1.html b/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1.html
new file mode 100644
index 0000000..ee77758
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_entitiesremovenameditemns1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1.js b/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1.js
new file mode 100644
index 0000000..b747021
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_entitiesremovenameditemns1.js
@@ -0,0 +1,141 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_entitiesremovenameditemns1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An attempt to add remove an entity using removeNamedItemNS should result in
+a NO_MODIFICATION_ERR or a NOT_FOUND_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1788794630
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-removeNamedItemNS
+*/
+function hc_entitiesremovenameditemns1() {
+ var success;
+ if(checkInitialization(builder, "hc_entitiesremovenameditemns1") != null) return;
+ var doc;
+ var entities;
+ var docType;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+entities = docType.entities;
+
+ assertNotNull("entitiesNotNull",entities);
+
+ try {
+ retval = entities.removeNamedItemNS("http://www.w3.org/1999/xhtml","alpha");
+ fail("throw_NO_MOD_OR_NOT_FOUND_ERR");
+
+ } catch (ex) {
+ if (typeof(ex.code) != 'undefined') {
+ switch(ex.code) {
+ case /* NO_MODIFICATION_ALLOWED_ERR */ 7 :
+ break;
+ case /* NOT_FOUND_ERR */ 8 :
+ break;
+ default:
+ throw ex;
+ }
+ } else {
+ throw ex;
+ }
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_entitiesremovenameditemns1();
+}
diff --git a/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1-expected.txt b/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1-expected.txt
new file mode 100644
index 0000000..81edeb9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_entitiessetnameditemns1
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1.html b/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1.html
new file mode 100644
index 0000000..306cad1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_entitiessetnameditemns1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1.js b/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1.js
new file mode 100644
index 0000000..4b5e134
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_entitiessetnameditemns1.js
@@ -0,0 +1,143 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_entitiessetnameditemns1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An attempt to add an element to the named node map returned by entities should
+result in a NO_MODIFICATION_ERR or HIERARCHY_REQUEST_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-1788794630
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS
+*/
+function hc_entitiessetnameditemns1() {
+ var success;
+ if(checkInitialization(builder, "hc_entitiessetnameditemns1") != null) return;
+ var doc;
+ var entities;
+ var docType;
+ var retval;
+ var elem;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+entities = docType.entities;
+
+ assertNotNull("entitiesNotNull",entities);
+elem = doc.createElementNS("http://www.w3.org/1999/xhtml","br");
+
+ try {
+ retval = entities.setNamedItemNS(elem);
+ fail("throw_HIER_OR_NO_MOD_ERR");
+
+ } catch (ex) {
+ if (typeof(ex.code) != 'undefined') {
+ switch(ex.code) {
+ case /* HIERARCHY_REQUEST_ERR */ 3 :
+ break;
+ case /* NO_MODIFICATION_ALLOWED_ERR */ 7 :
+ break;
+ default:
+ throw ex;
+ }
+ } else {
+ throw ex;
+ }
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_entitiessetnameditemns1();
+}
diff --git a/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1-expected.txt b/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1-expected.txt
new file mode 100644
index 0000000..ac0385f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_namednodemapinvalidtype1
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1.html b/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1.html
new file mode 100644
index 0000000..2ea47cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_namednodemapinvalidtype1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1.js b/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1.js
new file mode 100644
index 0000000..0cffa0e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_namednodemapinvalidtype1.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_namednodemapinvalidtype1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Attempt to insert an element into an attribute list,
+should raise a HIERARCHY_REQUEST_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='HIERARCHY_REQUEST_ERR'])
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-1025163788
+* @see http://www.w3.org/2000/11/DOM-Level-2-errata#core-4
+*/
+function hc_namednodemapinvalidtype1() {
+ var success;
+ if(checkInitialization(builder, "hc_namednodemapinvalidtype1") != null) return;
+ var doc;
+ var attributes;
+ var docElem;
+ var newElem;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docElem = doc.documentElement;
+
+ attributes = docElem.attributes;
+
+ newElem = doc.createElement("html");
+
+ {
+ success = false;
+ try {
+ retval = attributes.setNamedItem(newElem);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 3);
+ }
+ assertTrue("throw_HIERARCHY_REQUEST_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_namednodemapinvalidtype1();
+}
diff --git a/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1-expected.txt b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1-expected.txt
new file mode 100644
index 0000000..b9d9923
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_nodedocumentfragmentnormalize1
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1.html b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1.html
new file mode 100644
index 0000000..064fe39
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentfragmentnormalize1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1.js b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1.js
new file mode 100644
index 0000000..dd681a6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize1.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_nodedocumentfragmentnormalize1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Create a document fragment with two adjacent text nodes, normalize and see if the text nodes
+were combined.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D095
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-B63ED1A3
+*/
+function hc_nodedocumentfragmentnormalize1() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentfragmentnormalize1") != null) return;
+ var doc;
+ var docFragment;
+ var nodeValue;
+ var txtNode;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docFragment = doc.createDocumentFragment();
+ txtNode = doc.createTextNode("foo");
+ retval = docFragment.appendChild(txtNode);
+ txtNode = doc.createTextNode("bar");
+ retval = docFragment.appendChild(txtNode);
+ docFragment.normalize();
+ txtNode = docFragment.firstChild;
+
+ nodeValue = txtNode.nodeValue;
+
+ assertEquals("normalizedNodeValue","foobar",nodeValue);
+ retval = txtNode.nextSibling;
+
+ assertNull("singleChild",retval);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentfragmentnormalize1();
+}
diff --git a/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2-expected.txt b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2-expected.txt
new file mode 100644
index 0000000..4a37f8b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_nodedocumentfragmentnormalize2
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2.html b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2.html
new file mode 100644
index 0000000..9bbbe96
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_nodedocumentfragmentnormalize2.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2.js b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2.js
new file mode 100644
index 0000000..23c2e0e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_nodedocumentfragmentnormalize2.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_nodedocumentfragmentnormalize2";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Create a document fragment with an empty text node, after normalization there should be no child nodes.
+were combined.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-F68D095
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-B63ED1A3
+*/
+function hc_nodedocumentfragmentnormalize2() {
+ var success;
+ if(checkInitialization(builder, "hc_nodedocumentfragmentnormalize2") != null) return;
+ var doc;
+ var docFragment;
+ var nodeValue;
+ var txtNode;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docFragment = doc.createDocumentFragment();
+ txtNode = doc.createTextNode("");
+ retval = docFragment.appendChild(txtNode);
+ docFragment.normalize();
+ txtNode = docFragment.firstChild;
+
+ assertNull("noChild",txtNode);
+
+}
+
+
+
+
+function runTest() {
+ hc_nodedocumentfragmentnormalize2();
+}
diff --git a/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1-expected.txt b/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1-expected.txt
new file mode 100644
index 0000000..4943221
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_notationsremovenameditemns1
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1.html b/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1.html
new file mode 100644
index 0000000..ce2439a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_notationsremovenameditemns1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1.js b/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1.js
new file mode 100644
index 0000000..0202283
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_notationsremovenameditemns1.js
@@ -0,0 +1,141 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_notationsremovenameditemns1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An attempt to add remove an notation using removeNamedItemNS should result in
+a NO_MODIFICATION_ERR or a NOT_FOUND_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D46829EF
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-removeNamedItemNS
+*/
+function hc_notationsremovenameditemns1() {
+ var success;
+ if(checkInitialization(builder, "hc_notationsremovenameditemns1") != null) return;
+ var doc;
+ var notations;
+ var docType;
+ var retval;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+notations = docType.notations;
+
+ assertNotNull("notationsNotNull",notations);
+
+ try {
+ retval = notations.removeNamedItemNS("http://www.w3.org/1999/xhtml","alpha");
+ fail("throw_NO_MOD_OR_NOT_FOUND_ERR");
+
+ } catch (ex) {
+ if (typeof(ex.code) != 'undefined') {
+ switch(ex.code) {
+ case /* NO_MODIFICATION_ALLOWED_ERR */ 7 :
+ break;
+ case /* NOT_FOUND_ERR */ 8 :
+ break;
+ default:
+ throw ex;
+ }
+ } else {
+ throw ex;
+ }
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_notationsremovenameditemns1();
+}
diff --git a/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1-expected.txt b/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1-expected.txt
new file mode 100644
index 0000000..acf55d3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_notationssetnameditemns1
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1.html b/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1.html
new file mode 100644
index 0000000..b09167c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="hc_notationssetnameditemns1.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1.js b/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1.js
new file mode 100644
index 0000000..a2df4f5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/hc_notationssetnameditemns1.js
@@ -0,0 +1,143 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/hc_notationssetnameditemns1";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An attempt to add an element to the named node map returned by notations should
+result in a NO_MODIFICATION_ERR or HIERARCHY_REQUEST_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-D46829EF
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-setNamedItemNS
+*/
+function hc_notationssetnameditemns1() {
+ var success;
+ if(checkInitialization(builder, "hc_notationssetnameditemns1") != null) return;
+ var doc;
+ var notations;
+ var docType;
+ var retval;
+ var elem;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docType = doc.doctype;
+
+
+ if(
+
+ !(
+ (builder.contentType == "text/html")
+)
+
+ ) {
+ assertNotNull("docTypeNotNull",docType);
+notations = docType.notations;
+
+ assertNotNull("notationsNotNull",notations);
+elem = doc.createElementNS("http://www.w3.org/1999/xhtml","br");
+
+ try {
+ retval = notations.setNamedItemNS(elem);
+ fail("throw_HIER_OR_NO_MOD_ERR");
+
+ } catch (ex) {
+ if (typeof(ex.code) != 'undefined') {
+ switch(ex.code) {
+ case /* HIERARCHY_REQUEST_ERR */ 3 :
+ break;
+ case /* NO_MODIFICATION_ALLOWED_ERR */ 7 :
+ break;
+ default:
+ throw ex;
+ }
+ } else {
+ throw ex;
+ }
+ }
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ hc_notationssetnameditemns1();
+}
diff --git a/LayoutTests/dom/html/level2/core/resources/COPYRIGHT.html b/LayoutTests/dom/html/level2/core/resources/COPYRIGHT.html
new file mode 100644
index 0000000..55c385d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/resources/COPYRIGHT.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
+ <title>W3C IPR SOFTWARE NOTICE</title>
+<style type="text/css">
+<!--
+html, body { background: #fff; color: #000; } /* body for Windows IE3 */
+-->
+</style>
+ </head>
+ <body>
+ <h1>
+ W3C IPR SOFTWARE NOTICE
+ </h1>
+ <h3>
+ Copyright &copy; 2002-2004 <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved.
+ </h3>
+ <p>
+ The DOM Conformance Test Suite for Level 2 core is published under
+ the W3C Software Copyright Notice and License. The software
+ license requires "Notice of any changes or modifications to the
+ W3C files, including the date changes were made." Consequently,
+ modified versions of the DOM ECMAScript or Java tests must
+ document that they do not conform to the DOM Conformance Test
+ Suites; in the case of the Java language binding, the package
+ names can no longer be in the 'org.w3c' package.
+ </p>
+ <p>
+ <b>Note:</b> The original version of the W3C Software Copyright Notice
+ and License could be found at <a
+ href='http://www.w3.org/Consortium/Legal/copyright-software-19980720'>http://www.w3.org/Consortium/Legal/copyright-software-19980720</a>
+ </p>
+ <h3>
+ Copyright &copy; 1994-2004 <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved. http://www.w3.org/Consortium/Legal/
+ </h3>
+ <p>
+ This W3C work (including software, documents, or other related items) is
+ being provided by the copyright holders under the following license. By
+ obtaining, using and/or copying this work, you (the licensee) agree that
+ you have read, understood, and will comply with the following terms and
+ conditions:
+ </p>
+ <p>
+ Permission to use, copy, and modify this software and its documentation,
+ with or without modification,&nbsp; for any purpose and without fee or
+ royalty is hereby granted, provided that you include the following on ALL
+ copies of the software and documentation or portions thereof, including
+ modifications, that you make:
+ </p>
+ <ol>
+ <li>
+ The full text of this NOTICE in a location viewable to users of the
+ redistributed or derivative work.
+ </li>
+ <li>
+ Any pre-existing intellectual property disclaimers, notices, or terms
+ and conditions. If none exist, a short notice of the following form
+ (hypertext is preferred, text is permitted) should be used within the
+ body of any redistributed or derivative code: "Copyright &copy;
+ [$date-of-software] <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved. http://www.w3.org/Consortium/Legal/"
+ </li>
+ <li>
+ Notice of any changes or modifications to the W3C files, including the
+ date changes were made. (We recommend you provide URIs to the location
+ from which the code is derived.)
+ </li>
+ </ol>
+ <p>
+ THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT
+ HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED,
+ INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS
+ FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR
+ DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
+ TRADEMARKS OR OTHER RIGHTS.
+ </p>
+ <p>
+ COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
+ CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
+ DOCUMENTATION.
+ </p>
+ <p>
+ The name and trademarks of copyright holders may NOT be used in
+ advertising or publicity pertaining to the software without specific,
+ written prior permission. Title to copyright in this software and any
+ associated documentation will at all times remain with copyright
+ holders.
+ </p>
+ </body>
+</html>
diff --git a/LayoutTests/dom/html/level2/core/selfhtml.js b/LayoutTests/dom/html/level2/core/selfhtml.js
new file mode 100644
index 0000000..06b0cc1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/selfhtml.js
@@ -0,0 +1,721 @@
+/*
+Copyright (c) 2001-2005 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+ function assertSize(descr, expected, actual) {
+ var actualSize;
+ assertNotNull(descr, actual);
+ actualSize = actual.length;
+ assertEquals(descr, expected, actualSize);
+ }
+
+ function assertEqualsAutoCase(context, descr, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if(context == "attribute") {
+ assertEquals(descr, expected.toLowerCase(), actual.toLowerCase());
+ } else {
+ assertEquals(descr, expected.toUpperCase(), actual);
+ }
+ } else {
+ assertEquals(descr, expected, actual);
+ }
+ }
+
+
+ function assertEqualsCollectionAutoCase(context, descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ if (expectedValue.toLowerCase() == actual[j].toLowerCase()) {
+ matches++;
+ }
+ } else {
+ if (expectedValue.toUpperCase() == actual[j]) {
+ matches++;
+ }
+ }
+ } else {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+ function assertEqualsCollection(descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+
+ function assertEqualsListAutoCase(context, descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ assertEqualsAutoCase(context, descr, expected[i], actual[i]);
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+
+ function assertEqualsList(descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ if(expected[i] != actual[i]) {
+ assertEquals(descr, expected[i], actual[i]);
+ }
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+ function assertInstanceOf(descr, type, obj) {
+ if(type == "Attr") {
+ assertEquals(descr,2,obj.nodeType);
+ var specd = obj.specified;
+ }
+ }
+
+ function assertSame(descr, expected, actual) {
+ if(expected != actual) {
+ assertEquals(descr, expected.nodeType, actual.nodeType);
+ assertEquals(descr, expected.nodeValue, actual.nodeValue);
+ }
+ }
+
+ function assertURIEquals(assertID, scheme, path, host, file, name, query, fragment, isAbsolute, actual) {
+ //
+ // URI must be non-null
+ assertNotNull(assertID, actual);
+
+ var uri = actual;
+
+ var lastPound = actual.lastIndexOf("#");
+ var actualFragment = "";
+ if(lastPound != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastPound);
+ actualFragment = actual.substring(lastPound+1);
+ }
+ if(fragment != null) assertEquals(assertID,fragment, actualFragment);
+
+ var lastQuestion = uri.lastIndexOf("?");
+ var actualQuery = "";
+ if(lastQuestion != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastQuestion);
+ actualQuery = actual.substring(lastQuestion+1);
+ }
+ if(query != null) assertEquals(assertID, query, actualQuery);
+
+ var firstColon = uri.indexOf(":");
+ var firstSlash = uri.indexOf("/");
+ var actualPath = uri;
+ var actualScheme = "";
+ if(firstColon != -1 && firstColon < firstSlash) {
+ actualScheme = uri.substring(0,firstColon);
+ actualPath = uri.substring(firstColon + 1);
+ }
+
+ if(scheme != null) {
+ assertEquals(assertID, scheme, actualScheme);
+ }
+
+ if(path != null) {
+ assertEquals(assertID, path, actualPath);
+ }
+
+ if(host != null) {
+ var actualHost = "";
+ if(actualPath.substring(0,2) == "//") {
+ var termSlash = actualPath.substring(2).indexOf("/") + 2;
+ actualHost = actualPath.substring(0,termSlash);
+ }
+ assertEquals(assertID, host, actualHost);
+ }
+
+ if(file != null || name != null) {
+ var actualFile = actualPath;
+ var finalSlash = actualPath.lastIndexOf("/");
+ if(finalSlash != -1) {
+ actualFile = actualPath.substring(finalSlash+1);
+ }
+ if (file != null) {
+ assertEquals(assertID, file, actualFile);
+ }
+ if (name != null) {
+ var actualName = actualFile;
+ var finalDot = actualFile.lastIndexOf(".");
+ if (finalDot != -1) {
+ actualName = actualName.substring(0, finalDot);
+ }
+ assertEquals(assertID, name, actualName);
+ }
+ }
+
+ if(isAbsolute != null) {
+ assertEquals(assertID, isAbsolute, actualPath.substring(0,1) == "/");
+ }
+ }
+
+
+// size() used by assertSize element
+function size(collection)
+{
+ return collection.length;
+}
+
+function same(expected, actual)
+{
+ return expected === actual;
+}
+
+function equalsAutoCase(context, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ return expected.toLowerCase() == actual;
+ }
+ return expected.toUpperCase() == actual;
+ }
+ return expected == actual;
+}
+
+function createTempURI(scheme) {
+ if (scheme == "http") {
+ return "http://localhost:8080/webdav/tmp" + Math.floor(Math.random() * 100000) + ".xml";
+ }
+ return "file:///tmp/domts" + Math.floor(Math.random() * 100000) + ".xml";
+}
+
+
+
+function EventMonitor() {
+ this.atEvents = new Array();
+ this.bubbledEvents = new Array();
+ this.capturedEvents = new Array();
+ this.allEvents = new Array();
+}
+
+EventMonitor.prototype.handleEvent = function(evt) {
+ switch(evt.eventPhase) {
+ case 1:
+ monitor.capturedEvents[monitor.capturedEvents.length] = evt;
+ break;
+
+ case 2:
+ monitor.atEvents[monitor.atEvents.length] = evt;
+ break;
+
+ case 3:
+ monitor.bubbledEvents[monitor.bubbledEvents.length] = evt;
+ break;
+ }
+ monitor.allEvents[monitor.allEvents.length] = evt;
+}
+
+function DOMErrorImpl(err) {
+ this.severity = err.severity;
+ this.message = err.message;
+ this.type = err.type;
+ this.relatedException = err.relatedException;
+ this.relatedData = err.relatedData;
+ this.location = err.location;
+}
+
+
+
+function DOMErrorMonitor() {
+ this.allErrors = new Array();
+}
+
+DOMErrorMonitor.prototype.handleError = function(err) {
+ errorMonitor.allErrors[errorMonitor.allErrors.length] = new DOMErrorImpl(err);
+}
+
+DOMErrorMonitor.prototype.assertLowerSeverity = function(id, severity) {
+ var i;
+ for (i = 0; i < this.allErrors.length; i++) {
+ if (this.allErrors[i].severity >= severity) {
+ assertEquals(id, severity - 1, this.allErrors[i].severity);
+ }
+ }
+}
+
+function UserDataNotification(operation, key, data, src, dst) {
+ this.operation = operation;
+ this.key = key;
+ this.data = data;
+ this.src = src;
+ this.dst = dst;
+}
+
+function UserDataMonitor() {
+ this.allNotifications = new Array();
+}
+
+UserDataMonitor.prototype.handle = function(operation, key, data, src, dst) {
+ userDataMonitor.allNotifications[userDataMonitor.allNotifications.length] =
+ new UserDataNotification(operation, key, data, src, dst);
+}
+
+
+
+function HTMLBuilder() {
+ this.contentType = "text/html";
+ this.supportedContentTypes = [ "text/html" ];
+
+ this.supportsAsyncChange = false;
+ this.async = false;
+ this.fixedAttributeNames = [
+ "validating", "expandEntityReferences", "coalescing",
+ "signed", "hasNullString", "ignoringElementContentWhitespace", "namespaceAware", "ignoringComments", "schemaValidating"];
+
+ this.fixedAttributeValues = [false, true, false, true, true , false, false, false, false ];
+ this.configurableAttributeNames = [ ];
+ this.configurableAttributeValues = [ ];
+ this.initializationError = null;
+ this.initializationFatalError = null;
+ this.skipIncompatibleTests = true;
+ this.documentURLs = new Array();
+ this.documentVarnames = new Array();
+}
+
+HTMLBuilder.prototype.hasFeature = function(feature, version) {
+ return document.implementation.hasFeature(feature, version);
+}
+
+HTMLBuilder.prototype.getImplementation = function() {
+ return document.implementation;
+}
+
+HTMLBuilder.prototype.preload = function(frame, varname, url) {
+ var i;
+ this.documentVarnames[this.documentVarnames.length] = varname;
+ this.documentURLs[this.documentURLs.length] = url;
+ if (this.documentURLs.length > 1) {
+ //
+ // if all the urls are not the same
+ //
+ for (i = 1; i < this.documentURLs.length; i++) {
+ if (this.documentURLs[i] != this.documentURLs[0]) {
+ throw "Tests with multiple loads of different documents are not currently supported";
+ }
+ }
+ }
+ return 1;
+}
+
+HTMLBuilder.prototype.cloneNode = function(srcNode, doc) {
+ var clone = null;
+ switch(srcNode.nodeType) {
+ //
+ // element
+ case 1:
+ clone = doc.createElement(srcNode.nodeName.toLowerCase());
+ var attrs = srcNode.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+ var srcChild = srcNode.firstChild;
+ while(srcChild != null) {
+ var cloneChild = this.cloneNode(srcChild, doc);
+ if (cloneChild != null) {
+ clone.appendChild(cloneChild);
+ }
+ srcChild = srcChild.nextSibling;
+ }
+ break;
+
+ case 3:
+ clone = doc.createTextNode(srcNode.nodeValue);
+ break;
+
+ case 4:
+ clone = doc.createCDATASection(srcNode.nodeValue);
+ break;
+
+ case 7:
+ clone = doc.createProcessingInstruction(srcNode.nodeValue);
+ break;
+
+ case 8:
+ clone = doc.createComment(srcNode.nodeValue);
+ break;
+ }
+ return clone;
+
+}
+
+
+HTMLBuilder.prototype.load = function(frame, varname, url) {
+ if (this.documentVarnames[0] == varname) {
+ return document;
+ }
+ //
+ //
+ // not a perfect way to do this
+ // Document.cloneNode is implementation dependent but exists in L1
+ // and implemented in IE. The alternative brute force copy
+ // only works in L2 or higher implementations and can't copy
+ // entity and notation definitions, etc.
+ var clone = null;
+ try {
+ clone = document.cloneNode(true);
+ } catch(ex) {
+ }
+ if (clone == null) {
+ clone = document.implementation.createDocument(
+ document.documentElement.namespaceURI,
+ document.documentElement.nodeName,
+ null);
+ //
+ // Work-around since
+ // Safari does not create document element
+ // create document.
+ if (clone.documentElement == null) {
+ clone.appendChild(clone.createElement(document.documentElement.nodeName));
+ }
+ var attrs = document.documentElement.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.documentElement.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+
+ var srcNode = document.firstChild;
+ while(srcNode != null && srcNode.nodeType != 1) {
+ if (srcNode.nodeType != 10) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.insertBefore(cloneNode, clone.documentElement);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.nextSibling;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.appendChild(cloneNode);
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.firstChild;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ if (cloneNode != null) {
+ clone.documentElement.appendChild(cloneNode);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ }
+ return clone;
+}
+
+HTMLBuilder.prototype.getImplementationAttribute = function(attr) {
+ for (var i = 0; i < this.fixedAttributeNames.length; i++) {
+ if (this.fixedAttributeNames[i] == attr) {
+ return this.fixedAttributeValues[i];
+ }
+ }
+ throw "Unrecognized implementation attribute: " + attr;
+}
+
+
+HTMLBuilder.prototype.setImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ if (supported != value) {
+ this.initializationError = "HTML loader does not support " + attribute + "=" + value;
+ }
+}
+
+HTMLBuilder.prototype.canSetImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ return (supported == value);
+}
+
+
+
+
+function createConfiguredBuilder() {
+ return new HTMLBuilder();
+}
+
+function catchInitializationError(buildr, ex) {
+ buildr.initializationError = ex;
+ buildr.initializationFatalError = ex;
+}
+
+function toLowerArray(src) {
+ var newArray = new Array();
+ var i;
+ for (i = 0; i < src.length; i++) {
+ newArray[i] = src[i].toLowerCase();
+ }
+ return newArray;
+}
+
+
+function checkFeature(feature, version)
+{
+ if (!builder.hasFeature(feature, version))
+ {
+ //
+ // don't throw exception so that users can select to ignore the precondition
+ //
+ builder.initializationError = "builder does not support feature " + feature + " version " + version;
+ }
+}
+
+function setResult(resultType, message) {
+ var testName = getTargetURI();
+ document.open();
+ document.writeln("<html><head>");
+ document.writeln("<meta HTTP-EQUIV='Content-Type' CONTENT='text/html; CHARSET=utf-8'>");
+ document.write("<title>");
+ document.write(testName + ":" + resultType);
+ document.write("</title></head><body><table width='100%' border='1' style='color:");
+ if (resultType == null) {
+ document.writeln("green'><tr><td>Test:</td><td>" + testName + "</td></tr><tr><td>Status:</td><td>Success</td></tr>");
+ } else {
+ if (resultType == "skip") {
+ document.writeln("blue'><tr><td>Test:</td><td>" + testName + "</td></tr><tr><td>Status:</td><td>Skipped</td></tr>");
+ } else {
+ document.writeln("red'><tr><td>Test:</td><td>" + testName + "</td><td></tr><tr><td>Status:</td><td>" + resultType + "</td></tr>");
+ }
+ }
+ if (message != null) {
+ document.writeln("<tr><td>Detail:</td><td>" + message + "</td></tr>");
+ }
+ document.write("</table></body></html>");
+ document.close();
+ if (parent != window) {
+ parent.setResult(testName, resultType, message);
+ }
+}
+
+function checkInitialization(buildr, testname) {
+ return buildr.initializationError;
+}
+
+function preload(docRef, varname, href) {
+ return builder.preload(docRef, varname, href);
+}
+
+
+function load(docRef, varname, href) {
+ return builder.load(docRef, varname, href);
+}
+
+
+function getImplementationAttribute(attr) {
+ return builder.getImplementationAttribute(attr);
+}
+
+
+function setImplementationAttribute(attribute, value) {
+ builder.setImplementationAttribute(attribute, value);
+}
+
+function createXPathEvaluator(doc) {
+ try {
+ return doc.getFeature("XPath", null);
+ }
+ catch(ex) {
+ }
+ return doc;
+}
+
+
+function getImplementation() {
+ return builder.getImplementation();
+}
+
+function assertEquals(id, expected, actual) {
+ var myActual;
+ if (expected != actual) {
+ myActual = actual;
+ if (actual == null) {
+ myActual = "null";
+ }
+ throw "failure:" + id + ": assertEquals failed, actual " + myActual + ", expected " + expected + ".";
+ }
+}
+
+function assertNull(id, actual) {
+ if (actual != null) {
+ throw "failure:" + id + ": assertNull failed, actual " + actual;
+ }
+}
+
+
+function assertTrue(id, actual) {
+ if (!actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+
+function assertFalse(id, actual) {
+ if (actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+function assertNotNull(id, actual) {
+ if (actual == null) {
+ throw "failure:" + id + ": assertNotNull failed";
+ }
+}
+
+function fail(id) {
+ throw "failure:" + id + ": fail";
+}
+
+
+
+function getSuffix(contentType) {
+ switch(contentType) {
+ case "text/xml":
+ return ".xml";
+
+ case "application/xhtml+xml":
+ return ".xhtml";
+
+ case "image/svg+xml":
+ return ".svg";
+
+ case "text/mathml":
+ return ".mml";
+ }
+ return ".html";
+}
+
+
+function getResourceURI(name, scheme, contentType) {
+ var base = document.documentURI;
+ if (base == null) {
+ base = "";
+ } else {
+ base = base.substring(0, base.lastIndexOf('/') + 1) + "files/";
+ }
+ return base + name + getSuffix(contentType);
+}
+
+
+
+function startTest() {
+
+//
+// WebKit modification: 18-August-2005
+//
+// Inform the test controller that this test has a text-format result and so should
+// be dumped as text, and also that the dump should not occur automatically.
+//
+if (window.layoutTestController) {
+ layoutTestController.dumpAsText();
+ layoutTestController.waitUntilDone();
+}
+//
+// End WebKit modification
+//
+
+ //
+ // invoke test setup
+ //
+ setUpPage();
+
+ try {
+ runTest();
+ if (builder.initializationError == null) {
+ setResult(null, null);
+ } else {
+ setResult("skip", builder.initializationError);
+ }
+ } catch(ex) {
+ if (typeof(ex.substring) != 'undefined' && ex.substring(0, 8) == "failure:") {
+ setResult("failure", ex.substring(8));
+ } else {
+ setResult("error", ex);
+ }
+ }
+
+//
+// WebKit modification: 18-August-2005
+//
+// Inform the test controller that this test is complete, so it's time to dump.
+//
+ if (window.layoutTestController) {
+ layoutTestController.notifyDone();
+ }
+//
+// End WebKit modification
+//
+
+}
diff --git a/LayoutTests/dom/html/level2/core/setAttributeNS10-expected.txt b/LayoutTests/dom/html/level2/core/setAttributeNS10-expected.txt
new file mode 100644
index 0000000..9369464
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/setAttributeNS10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/core/setAttributeNS10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/core/setAttributeNS10.html b/LayoutTests/dom/html/level2/core/setAttributeNS10.html
new file mode 100644
index 0000000..f72ff36
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/setAttributeNS10.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="setAttributeNS10.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/core/setAttributeNS10.js b/LayoutTests/dom/html/level2/core/setAttributeNS10.js
new file mode 100644
index 0000000..c4abed6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/core/setAttributeNS10.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/core/setAttributeNS10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Element.setAttributeNS with an empty qualified name should cause an INVALID_CHARACTER_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-258A00AF')/constant[@name='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAttrNS
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-ElSetAttrNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR'])
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=525
+*/
+function setAttributeNS10() {
+ var success;
+ if(checkInitialization(builder, "setAttributeNS10") != null) return;
+ var namespaceURI = "http://www.example.gov";
+ var doc;
+ var elementList;
+ var testAddr;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ elementList = doc.getElementsByTagName("em");
+ testAddr = elementList.item(0);
+
+ {
+ success = false;
+ try {
+ testAddr.setAttributeNS(namespaceURI,"","newValue");
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 5);
+ }
+ assertTrue("throw_INVALID_CHARACTER_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ setAttributeNS10();
+}
diff --git a/LayoutTests/dom/html/level2/events/DocumentEventCast01-expected.txt b/LayoutTests/dom/html/level2/events/DocumentEventCast01-expected.txt
new file mode 100644
index 0000000..90bf30c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/DocumentEventCast01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/DocumentEventCast01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/DocumentEventCast01.html b/LayoutTests/dom/html/level2/events/DocumentEventCast01.html
new file mode 100644
index 0000000..df15c47
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/DocumentEventCast01.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="DocumentEventCast01.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/DocumentEventCast01.js b/LayoutTests/dom/html/level2/events/DocumentEventCast01.js
new file mode 100644
index 0000000..ff41750
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/DocumentEventCast01.js
@@ -0,0 +1,104 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/DocumentEventCast01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+A document is created using implementation.createDocument and
+cast to a DocumentEvent interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent
+*/
+function DocumentEventCast01() {
+ var success;
+ if(checkInitialization(builder, "DocumentEventCast01") != null) return;
+ var doc;
+ var docEvent;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ docEvent = doc;
+
+}
+
+
+
+
+function runTest() {
+ DocumentEventCast01();
+}
diff --git a/LayoutTests/dom/html/level2/events/EventTargetCast01-expected.txt b/LayoutTests/dom/html/level2/events/EventTargetCast01-expected.txt
new file mode 100644
index 0000000..3f8ee6d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/EventTargetCast01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/EventTargetCast01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/EventTargetCast01.html b/LayoutTests/dom/html/level2/events/EventTargetCast01.html
new file mode 100644
index 0000000..0ea96e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/EventTargetCast01.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="EventTargetCast01.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/EventTargetCast01.js b/LayoutTests/dom/html/level2/events/EventTargetCast01.js
new file mode 100644
index 0000000..574cf0d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/EventTargetCast01.js
@@ -0,0 +1,104 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/EventTargetCast01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+A document is created using implementation.createDocument and
+cast to a EventTarget interface.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget
+*/
+function EventTargetCast01() {
+ var success;
+ if(checkInitialization(builder, "EventTargetCast01") != null) return;
+ var doc;
+ var target;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ target = doc;
+
+}
+
+
+
+
+function runTest() {
+ EventTargetCast01();
+}
diff --git a/LayoutTests/dom/html/level2/events/createEvent01-expected.txt b/LayoutTests/dom/html/level2/events/createEvent01-expected.txt
new file mode 100644
index 0000000..fd8376e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/createEvent01.html b/LayoutTests/dom/html/level2/events/createEvent01.html
new file mode 100644
index 0000000..b6242a3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent01.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="createEvent01.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/createEvent01.js b/LayoutTests/dom/html/level2/events/createEvent01.js
new file mode 100644
index 0000000..da8cf41
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent01.js
@@ -0,0 +1,105 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "Events".
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent
+*/
+function createEvent01() {
+ var success;
+ if(checkInitialization(builder, "createEvent01") != null) return;
+ var doc;
+ var event;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("Events");
+ assertNotNull("notnull",event);
+
+}
+
+
+
+
+function runTest() {
+ createEvent01();
+}
diff --git a/LayoutTests/dom/html/level2/events/createEvent02-expected.txt b/LayoutTests/dom/html/level2/events/createEvent02-expected.txt
new file mode 100644
index 0000000..4b508a8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/createEvent02.html b/LayoutTests/dom/html/level2/events/createEvent02.html
new file mode 100644
index 0000000..791ba7e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent02.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="createEvent02.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/createEvent02.js b/LayoutTests/dom/html/level2/events/createEvent02.js
new file mode 100644
index 0000000..a7a1dde
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent02.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("MutationEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "MutationEvents".
+Only applicable if implementation supports MutationEvents.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent
+*/
+function createEvent02() {
+ var success;
+ if(checkInitialization(builder, "createEvent02") != null) return;
+ var doc;
+ var event;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("MutationEvents");
+ assertNotNull("notnull",event);
+
+}
+
+
+
+
+function runTest() {
+ createEvent02();
+}
diff --git a/LayoutTests/dom/html/level2/events/createEvent03-expected.txt b/LayoutTests/dom/html/level2/events/createEvent03-expected.txt
new file mode 100644
index 0000000..a07cc99
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/createEvent03.html b/LayoutTests/dom/html/level2/events/createEvent03.html
new file mode 100644
index 0000000..475fac9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent03.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="createEvent03.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/createEvent03.js b/LayoutTests/dom/html/level2/events/createEvent03.js
new file mode 100644
index 0000000..74d8a34
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent03.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("UIEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "UIEvents".
+Only applicable if implementation supports the "UIEvents" feature.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent
+*/
+function createEvent03() {
+ var success;
+ if(checkInitialization(builder, "createEvent03") != null) return;
+ var doc;
+ var event;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("UIEvents");
+ assertNotNull("notnull",event);
+
+}
+
+
+
+
+function runTest() {
+ createEvent03();
+}
diff --git a/LayoutTests/dom/html/level2/events/createEvent04-expected.txt b/LayoutTests/dom/html/level2/events/createEvent04-expected.txt
new file mode 100644
index 0000000..d4a1db9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/createEvent04.html b/LayoutTests/dom/html/level2/events/createEvent04.html
new file mode 100644
index 0000000..fc6b672
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent04.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="createEvent04.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/createEvent04.js b/LayoutTests/dom/html/level2/events/createEvent04.js
new file mode 100644
index 0000000..4d0fce5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent04.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("MouseEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "UIEvents".
+Only applicable if implementation supports the "UIEvents" feature.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent
+*/
+function createEvent04() {
+ var success;
+ if(checkInitialization(builder, "createEvent04") != null) return;
+ var doc;
+ var event;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("MouseEvents");
+ assertNotNull("notnull",event);
+
+}
+
+
+
+
+function runTest() {
+ createEvent04();
+}
diff --git a/LayoutTests/dom/html/level2/events/createEvent05-expected.txt b/LayoutTests/dom/html/level2/events/createEvent05-expected.txt
new file mode 100644
index 0000000..b0a49e9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/createEvent05.html b/LayoutTests/dom/html/level2/events/createEvent05.html
new file mode 100644
index 0000000..2c172d4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent05.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="createEvent05.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/createEvent05.js b/LayoutTests/dom/html/level2/events/createEvent05.js
new file mode 100644
index 0000000..089952f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/createEvent05.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/createEvent05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("HTMLEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An object implementing the Event interface is created by using
+DocumentEvent.createEvent method with eventType equals "HTMLEvents".
+Only applicable if implementation supports the "HTMLEvents" feature.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-DocumentEvent-createEvent
+*/
+function createEvent05() {
+ var success;
+ if(checkInitialization(builder, "createEvent05") != null) return;
+ var doc;
+ var event;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("HTMLEvents");
+ assertNotNull("notnull",event);
+
+}
+
+
+
+
+function runTest() {
+ createEvent05();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent01-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent01-expected.txt
new file mode 100644
index 0000000..4e23791
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent01.html b/LayoutTests/dom/html/level2/events/dispatchEvent01.html
new file mode 100644
index 0000000..322d85c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent01.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent01.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent01.js b/LayoutTests/dom/html/level2/events/dispatchEvent01.js
new file mode 100644
index 0000000..a8a2204
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent01.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+A null reference is passed to EventTarget.dispatchEvent(), should raise implementation
+or platform exception.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-17189187
+*/
+function dispatchEvent01() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent01") != null) return;
+ var doc;
+ var target;
+ var evt = null;
+
+ var preventDefault;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+
+ {
+ success = false;
+ try {
+ preventDefault = doc.dispatchEvent(evt);
+
+ } catch (ex) {
+ success = true;
+ }
+ assertTrue("throw_ImplException", success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent01();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent02-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent02-expected.txt
new file mode 100644
index 0000000..0be1d2c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent02.html b/LayoutTests/dom/html/level2/events/dispatchEvent02.html
new file mode 100644
index 0000000..9436c2c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent02.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent02.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent02.js b/LayoutTests/dom/html/level2/events/dispatchEvent02.js
new file mode 100644
index 0000000..1a46d48
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent02.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent02() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent02") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ evt = doc.createEvent("Events");
+
+ {
+ success = false;
+ try {
+ preventDefault = doc.dispatchEvent(evt);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 0);
+ }
+ assertTrue("throw_UNSPECIFIED_EVENT_TYPE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent02();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent03-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent03-expected.txt
new file mode 100644
index 0000000..cd06d61
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent03.html b/LayoutTests/dom/html/level2/events/dispatchEvent03.html
new file mode 100644
index 0000000..6b210b4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent03.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent03.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent03.js b/LayoutTests/dom/html/level2/events/dispatchEvent03.js
new file mode 100644
index 0000000..a615d16
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent03.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("MutationEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent03() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent03") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ evt = doc.createEvent("MutationEvents");
+
+ {
+ success = false;
+ try {
+ preventDefault = doc.dispatchEvent(evt);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 0);
+ }
+ assertTrue("throw_UNSPECIFIED_EVENT_TYPE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent03();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent04-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent04-expected.txt
new file mode 100644
index 0000000..c44cd14
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent04.html b/LayoutTests/dom/html/level2/events/dispatchEvent04.html
new file mode 100644
index 0000000..7707570
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent04.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent04.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent04.js b/LayoutTests/dom/html/level2/events/dispatchEvent04.js
new file mode 100644
index 0000000..628be89
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent04.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("UIEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent04() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent04") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ evt = doc.createEvent("UIEvents");
+
+ {
+ success = false;
+ try {
+ preventDefault = doc.dispatchEvent(evt);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 0);
+ }
+ assertTrue("throw_UNSPECIFIED_EVENT_TYPE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent04();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent05-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent05-expected.txt
new file mode 100644
index 0000000..4e9d0fd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent05.html b/LayoutTests/dom/html/level2/events/dispatchEvent05.html
new file mode 100644
index 0000000..41824ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent05.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent05.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent05.js b/LayoutTests/dom/html/level2/events/dispatchEvent05.js
new file mode 100644
index 0000000..1a5953f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent05.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("MouseEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent05() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent05") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ evt = doc.createEvent("MouseEvents");
+
+ {
+ success = false;
+ try {
+ preventDefault = doc.dispatchEvent(evt);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 0);
+ }
+ assertTrue("throw_UNSPECIFIED_EVENT_TYPE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent05();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent06-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent06-expected.txt
new file mode 100644
index 0000000..c832234
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent06.html b/LayoutTests/dom/html/level2/events/dispatchEvent06.html
new file mode 100644
index 0000000..c5e8844
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent06.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent06.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent06.js b/LayoutTests/dom/html/level2/events/dispatchEvent06.js
new file mode 100644
index 0000000..720fe46
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent06.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("HTMLEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An created but not initialized event is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent06() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent06") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ evt = doc.createEvent("HTMLEvents");
+
+ {
+ success = false;
+ try {
+ preventDefault = doc.dispatchEvent(evt);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 0);
+ }
+ assertTrue("throw_UNSPECIFIED_EVENT_TYPE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent06();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent07-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent07-expected.txt
new file mode 100644
index 0000000..f941adb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent07.html b/LayoutTests/dom/html/level2/events/dispatchEvent07.html
new file mode 100644
index 0000000..18b5d34
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent07.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent07.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent07.js b/LayoutTests/dom/html/level2/events/dispatchEvent07.js
new file mode 100644
index 0000000..9a0c5c7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent07.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+An Event initialized with a empty name is passed to EventTarget.dispatchEvent(). Should raise
+UNSPECIFIED_EVENT_TYPE_ERR EventException.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent07() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent07") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ evt = doc.createEvent("Events");
+ evt.initEvent("",false,false);
+
+ {
+ success = false;
+ try {
+ preventDefault = doc.dispatchEvent(evt);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 0);
+ }
+ assertTrue("throw_UNSPECIFIED_EVENT_TYPE_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent07();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent08-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent08-expected.txt
new file mode 100644
index 0000000..23e9af1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent08.html b/LayoutTests/dom/html/level2/events/dispatchEvent08.html
new file mode 100644
index 0000000..3f4f426
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent08.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent08.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent08.js b/LayoutTests/dom/html/level2/events/dispatchEvent08.js
new file mode 100644
index 0000000..67500d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent08.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+//EventMonitor's require a document level variable named monitor
+var monitor;
+
+/**
+*
+An EventListener registered on the target node with capture false, should
+recieve any event fired on that node.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent08() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent08") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+ monitor = new EventMonitor();
+
+ var atEvents = new Array();
+
+ var bubbledEvents = new Array();
+
+ var capturedEvents = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ doc.addEventListener("foo", monitor.handleEvent, false);
+ evt = doc.createEvent("Events");
+ evt.initEvent("foo",true,false);
+ preventDefault = doc.dispatchEvent(evt);
+ atEvents = monitor.atEvents;
+assertSize("atCount",1,atEvents);
+bubbledEvents = monitor.bubbledEvents;
+assertSize("bubbleCount",0,bubbledEvents);
+capturedEvents = monitor.capturedEvents;
+assertSize("captureCount",0,capturedEvents);
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent08();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent09-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent09-expected.txt
new file mode 100644
index 0000000..413ef99
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent09-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent09
+Status: failure
+Detail: atCount: assertEquals failed, actual 1, expected 0.
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent09.html b/LayoutTests/dom/html/level2/events/dispatchEvent09.html
new file mode 100644
index 0000000..789a277
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent09.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent09.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent09.js b/LayoutTests/dom/html/level2/events/dispatchEvent09.js
new file mode 100644
index 0000000..8e744b4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent09.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+//EventMonitor's require a document level variable named monitor
+var monitor;
+
+/**
+*
+An event is dispatched to the document with a capture listener attached.
+A capturing EventListener will not be triggered by events dispatched directly to the EventTarget upon which it is registered.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent09() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent09") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+ monitor = new EventMonitor();
+
+ var atEvents = new Array();
+
+ var bubbledEvents = new Array();
+
+ var capturedEvents = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ doc.addEventListener("foo", monitor.handleEvent, true);
+ evt = doc.createEvent("Events");
+ evt.initEvent("foo",true,false);
+ preventDefault = doc.dispatchEvent(evt);
+ atEvents = monitor.atEvents;
+assertSize("atCount",0,atEvents);
+bubbledEvents = monitor.bubbledEvents;
+assertSize("bubbleCount",0,bubbledEvents);
+capturedEvents = monitor.capturedEvents;
+assertSize("captureCount",0,capturedEvents);
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent09();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent10-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent10-expected.txt
new file mode 100644
index 0000000..4615680
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent10.html b/LayoutTests/dom/html/level2/events/dispatchEvent10.html
new file mode 100644
index 0000000..bce5934
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent10.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent10.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent10.js b/LayoutTests/dom/html/level2/events/dispatchEvent10.js
new file mode 100644
index 0000000..184b11f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent10.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+//EventMonitor's require a document level variable named monitor
+var monitor;
+
+/**
+*
+The same monitor is registered twice and an event is dispatched. The monitor should
+recieve only one handleEvent call.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent10() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent10") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+ monitor = new EventMonitor();
+
+ var atEvents = new Array();
+
+ var bubbledEvents = new Array();
+
+ var capturedEvents = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ doc.addEventListener("foo", monitor.handleEvent, false);
+ doc.addEventListener("foo", monitor.handleEvent, false);
+ evt = doc.createEvent("Events");
+ evt.initEvent("foo",true,false);
+ preventDefault = doc.dispatchEvent(evt);
+ atEvents = monitor.atEvents;
+assertSize("atCount",1,atEvents);
+bubbledEvents = monitor.bubbledEvents;
+assertSize("bubbleCount",0,bubbledEvents);
+capturedEvents = monitor.capturedEvents;
+assertSize("captureCount",0,capturedEvents);
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent10();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent11-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent11-expected.txt
new file mode 100644
index 0000000..bfc7703
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent11.html b/LayoutTests/dom/html/level2/events/dispatchEvent11.html
new file mode 100644
index 0000000..6ab5fe3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent11.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent11.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent11.js b/LayoutTests/dom/html/level2/events/dispatchEvent11.js
new file mode 100644
index 0000000..e93ac56
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent11.js
@@ -0,0 +1,120 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+//EventMonitor's require a document level variable named monitor
+var monitor;
+
+/**
+*
+The same monitor is registered twice, removed once, and an event is dispatched.
+The monitor should recieve only no handleEvent calls.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent11() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent11") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+ monitor = new EventMonitor();
+
+ var events = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ doc.addEventListener("foo", monitor.handleEvent, false);
+ doc.addEventListener("foo", monitor.handleEvent, false);
+ doc.removeEventListener("foo", monitor.handleEvent, false);
+ evt = doc.createEvent("Events");
+ evt.initEvent("foo",true,false);
+ preventDefault = doc.dispatchEvent(evt);
+ events = monitor.allEvents;
+assertSize("eventCount",0,events);
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent11();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent12-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent12-expected.txt
new file mode 100644
index 0000000..a241a22
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent12.html b/LayoutTests/dom/html/level2/events/dispatchEvent12.html
new file mode 100644
index 0000000..1393f49
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent12.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent12.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent12.js b/LayoutTests/dom/html/level2/events/dispatchEvent12.js
new file mode 100644
index 0000000..edfdfd5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent12.js
@@ -0,0 +1,151 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+//EventMonitor's require a document level variable named monitor
+var monitor;
+
+ /**
+ * Inner class implementation for variable other
+ */
+var other;
+
+/**
+ * Constructor
+
+ */
+
+function EventListenerN10035() {
+ }
+
+ /**
+ *
+This method is called whenever an event occurs of the type for which theEventListenerinterface was registered.
+
+ * @param evt
+TheEventcontains contextual information about the event. It also contains thestopPropagationand preventDefaultmethods which are used in determining the event's flow and default action.
+
+ */
+EventListenerN10035.prototype.handleEvent = function(evt) {
+ //
+ // bring class variables into function scope
+ //
+ }
+
+/**
+*
+A monitor is added, multiple calls to removeEventListener
+are mde with similar but not identical arguments, and an event is dispatched.
+The monitor should recieve handleEvent calls.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent12() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent12") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+ monitor = new EventMonitor();
+
+ other = new EventListenerN10035();
+
+ var events = new Array();
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ doc.addEventListener("foo", monitor.handleEvent, false);
+ doc.removeEventListener("foo", monitor.handleEvent, true);
+ doc.removeEventListener("food", monitor.handleEvent, false);
+ doc.removeEventListener("foo", other.handleEvent, false);
+ evt = doc.createEvent("Events");
+ evt.initEvent("foo",true,false);
+ preventDefault = doc.dispatchEvent(evt);
+ events = monitor.allEvents;
+assertSize("eventCount",1,events);
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent12();
+}
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent13-expected.txt b/LayoutTests/dom/html/level2/events/dispatchEvent13-expected.txt
new file mode 100644
index 0000000..e0cbd7f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent13.html b/LayoutTests/dom/html/level2/events/dispatchEvent13.html
new file mode 100644
index 0000000..b66aed4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent13.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="dispatchEvent13.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/dispatchEvent13.js b/LayoutTests/dom/html/level2/events/dispatchEvent13.js
new file mode 100644
index 0000000..bf3923f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/dispatchEvent13.js
@@ -0,0 +1,209 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/dispatchEvent13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+ /**
+ * Inner class implementation for variable listener1
+ */
+var listener1;
+
+/**
+ * Constructor
+
+ * @param events Value from value attribute of nested var element
+ * @param listeners Value from value attribute of nested var element
+ */
+
+function EventListenerN1003B(events, listeners) {
+ this.events = events;
+ this.listeners = listeners;
+ }
+
+ /**
+ *
+This method is called whenever an event occurs of the type for which theEventListenerinterface was registered.
+
+ * @param evt
+TheEventcontains contextual information about the event. It also contains thestopPropagationand preventDefaultmethods which are used in determining the event's flow and default action.
+
+ */
+EventListenerN1003B.prototype.handleEvent = function(evt) {
+ //
+ // bring class variables into function scope
+ //
+ var events = listener1.events;
+ var listeners = listener1.listeners;
+ var target;
+ var listener;
+ events[events.length] = evt;
+target = evt.currentTarget;
+
+ for(var indexN10065 = 0;indexN10065 < listeners.length; indexN10065++) {
+ listener = listeners[indexN10065];
+ target.removeEventListener("foo", listener.handleEvent, false);
+
+ }
+ }
+
+ /**
+ * Inner class implementation for variable listener2
+ */
+var listener2;
+
+/**
+ * Constructor
+
+ * @param events Value from value attribute of nested var element
+ * @param listeners Value from value attribute of nested var element
+ */
+
+function EventListenerN10074(events, listeners) {
+ this.events = events;
+ this.listeners = listeners;
+ }
+
+ /**
+ *
+This method is called whenever an event occurs of the type for which theEventListenerinterface was registered.
+
+ * @param evt
+TheEventcontains contextual information about the event. It also contains thestopPropagationand preventDefaultmethods which are used in determining the event's flow and default action.
+
+ */
+EventListenerN10074.prototype.handleEvent = function(evt) {
+ //
+ // bring class variables into function scope
+ //
+ var events = listener2.events;
+ var listeners = listener2.listeners;
+ var target;
+ var listener;
+ events[events.length] = evt;
+target = evt.currentTarget;
+
+ for(var indexN10098 = 0;indexN10098 < listeners.length; indexN10098++) {
+ listener = listeners[indexN10098];
+ target.removeEventListener("foo", listener.handleEvent, false);
+
+ }
+ }
+
+/**
+*
+Two listeners are registered on the same target, each of which will remove both itself and
+the other on the first event. Only one should see the event since event listeners
+can never be invoked after being removed.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-EventTarget-dispatchEvent
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#xpointer(id('Events-EventTarget-dispatchEvent')/raises/exception[@name='EventException']/descr/p[substring-before(.,':')='UNSPECIFIED_EVENT_TYPE_ERR'])
+*/
+function dispatchEvent13() {
+ var success;
+ if(checkInitialization(builder, "dispatchEvent13") != null) return;
+ var doc;
+ var target;
+ var evt;
+ var preventDefault;
+ var listeners = new Array();
+
+ var events = new Array();
+
+ listener1 = new EventListenerN1003B(events, listeners);
+
+ listener2 = new EventListenerN10074(events, listeners);
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ listeners[listeners.length] = listener1;
+listeners[listeners.length] = listener2;
+doc.addEventListener("foo", listener1.handleEvent, false);
+ doc.addEventListener("foo", listener2.handleEvent, false);
+ evt = doc.createEvent("Events");
+ evt.initEvent("foo",true,false);
+ preventDefault = doc.dispatchEvent(evt);
+ assertSize("eventCount",1,events);
+
+}
+
+
+
+
+function runTest() {
+ dispatchEvent13();
+}
diff --git a/LayoutTests/dom/html/level2/events/initEvent01-expected.txt b/LayoutTests/dom/html/level2/events/initEvent01-expected.txt
new file mode 100644
index 0000000..7693f61
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/initEvent01.html b/LayoutTests/dom/html/level2/events/initEvent01.html
new file mode 100644
index 0000000..8cde89f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent01.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="initEvent01.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/initEvent01.js b/LayoutTests/dom/html/level2/events/initEvent01.js
new file mode 100644
index 0000000..b9346e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent01.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The Event.initEvent method is called for event returned by DocumentEvent.createEvent("events")
+and the state is checked to see if it reflects the parameters.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent
+*/
+function initEvent01() {
+ var success;
+ if(checkInitialization(builder, "initEvent01") != null) return;
+ var doc;
+ var event;
+ var expectedEventType = "rotate";
+ var actualEventType;
+ var expectedCanBubble = true;
+ var actualCanBubble;
+ var expectedCancelable = false;
+ var actualCancelable;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("Events");
+ assertNotNull("notnull",event);
+event.initEvent(expectedEventType,expectedCanBubble,expectedCancelable);
+ actualEventType = event.type;
+
+ assertEquals("type",expectedEventType,actualEventType);
+ actualCancelable = event.cancelable;
+
+ assertEquals("cancelable",expectedCancelable,actualCancelable);
+ actualCanBubble = event.bubbles;
+
+ assertEquals("canBubble",expectedCanBubble,actualCanBubble);
+
+}
+
+
+
+
+function runTest() {
+ initEvent01();
+}
diff --git a/LayoutTests/dom/html/level2/events/initEvent02-expected.txt b/LayoutTests/dom/html/level2/events/initEvent02-expected.txt
new file mode 100644
index 0000000..1889794
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/initEvent02.html b/LayoutTests/dom/html/level2/events/initEvent02.html
new file mode 100644
index 0000000..a55d144
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent02.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="initEvent02.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/initEvent02.js b/LayoutTests/dom/html/level2/events/initEvent02.js
new file mode 100644
index 0000000..78275c5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent02.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The Event.initEvent method is called for event returned by DocumentEvent.createEvent("events")
+and the state is checked to see if it reflects the parameters.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent
+*/
+function initEvent02() {
+ var success;
+ if(checkInitialization(builder, "initEvent02") != null) return;
+ var doc;
+ var event;
+ var expectedEventType = "rotate";
+ var actualEventType;
+ var expectedCanBubble = false;
+ var actualCanBubble;
+ var expectedCancelable = true;
+ var actualCancelable;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("Events");
+ assertNotNull("notnull",event);
+event.initEvent(expectedEventType,expectedCanBubble,expectedCancelable);
+ actualEventType = event.type;
+
+ assertEquals("type",expectedEventType,actualEventType);
+ actualCancelable = event.cancelable;
+
+ assertEquals("cancelable",expectedCancelable,actualCancelable);
+ actualCanBubble = event.bubbles;
+
+ assertEquals("canBubble",expectedCanBubble,actualCanBubble);
+
+}
+
+
+
+
+function runTest() {
+ initEvent02();
+}
diff --git a/LayoutTests/dom/html/level2/events/initEvent03-expected.txt b/LayoutTests/dom/html/level2/events/initEvent03-expected.txt
new file mode 100644
index 0000000..85ccb1d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/initEvent03.html b/LayoutTests/dom/html/level2/events/initEvent03.html
new file mode 100644
index 0000000..0b6b0f0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent03.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="initEvent03.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/initEvent03.js b/LayoutTests/dom/html/level2/events/initEvent03.js
new file mode 100644
index 0000000..3143971
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent03.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The Event.initEvent method is called for event returned by DocumentEvent.createEvent("events")
+and the state is checked to see if it reflects the parameters. initEvent may be
+called multiple times and the last time is definitive.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent
+*/
+function initEvent03() {
+ var success;
+ if(checkInitialization(builder, "initEvent03") != null) return;
+ var doc;
+ var event;
+ var expectedEventType = "rotate";
+ var actualEventType;
+ var actualCanBubble;
+ var actualCancelable;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("Events");
+ assertNotNull("notnull",event);
+event.initEvent("rotate",true,true);
+ actualEventType = event.type;
+
+ assertEquals("type","rotate",actualEventType);
+ actualCancelable = event.cancelable;
+
+ assertEquals("cancelable",true,actualCancelable);
+ actualCanBubble = event.bubbles;
+
+ assertEquals("canBubble",true,actualCanBubble);
+ event.initEvent("shear",false,false);
+ actualEventType = event.type;
+
+ assertEquals("type2","shear",actualEventType);
+ actualCancelable = event.cancelable;
+
+ assertEquals("cancelable2",false,actualCancelable);
+ actualCanBubble = event.bubbles;
+
+ assertEquals("canBubble2",false,actualCanBubble);
+
+}
+
+
+
+
+function runTest() {
+ initEvent03();
+}
diff --git a/LayoutTests/dom/html/level2/events/initEvent04-expected.txt b/LayoutTests/dom/html/level2/events/initEvent04-expected.txt
new file mode 100644
index 0000000..a90cab3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/initEvent04.html b/LayoutTests/dom/html/level2/events/initEvent04.html
new file mode 100644
index 0000000..96da0f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent04.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="initEvent04.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/initEvent04.js b/LayoutTests/dom/html/level2/events/initEvent04.js
new file mode 100644
index 0000000..0136e07
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent04.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("MutationEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The Event.initEvent method is called for event returned by
+DocumentEvent.createEvent("MutationEvents")
+and the state is checked to see if it reflects the parameters.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent
+*/
+function initEvent04() {
+ var success;
+ if(checkInitialization(builder, "initEvent04") != null) return;
+ var doc;
+ var event;
+ var expectedEventType = "rotate";
+ var actualEventType;
+ var expectedCanBubble = true;
+ var actualCanBubble;
+ var expectedCancelable = false;
+ var actualCancelable;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("MutationEvents");
+ assertNotNull("notnull",event);
+event.initEvent(expectedEventType,expectedCanBubble,expectedCancelable);
+ actualEventType = event.type;
+
+ assertEquals("type",expectedEventType,actualEventType);
+ actualCancelable = event.cancelable;
+
+ assertEquals("cancelable",expectedCancelable,actualCancelable);
+ actualCanBubble = event.bubbles;
+
+ assertEquals("canBubble",expectedCanBubble,actualCanBubble);
+
+}
+
+
+
+
+function runTest() {
+ initEvent04();
+}
diff --git a/LayoutTests/dom/html/level2/events/initEvent05-expected.txt b/LayoutTests/dom/html/level2/events/initEvent05-expected.txt
new file mode 100644
index 0000000..ee70b47
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/initEvent05.html b/LayoutTests/dom/html/level2/events/initEvent05.html
new file mode 100644
index 0000000..fe34b10
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent05.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="initEvent05.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/initEvent05.js b/LayoutTests/dom/html/level2/events/initEvent05.js
new file mode 100644
index 0000000..e2abb95
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent05.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("MutationEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The Event.initEvent method is called for event returned by
+DocumentEvent.createEvent("MutationEvents")
+and the state is checked to see if it reflects the parameters.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent
+*/
+function initEvent05() {
+ var success;
+ if(checkInitialization(builder, "initEvent05") != null) return;
+ var doc;
+ var event;
+ var expectedEventType = "rotate";
+ var actualEventType;
+ var expectedCanBubble = false;
+ var actualCanBubble;
+ var expectedCancelable = true;
+ var actualCancelable;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("MutationEvents");
+ assertNotNull("notnull",event);
+event.initEvent(expectedEventType,expectedCanBubble,expectedCancelable);
+ actualEventType = event.type;
+
+ assertEquals("type",expectedEventType,actualEventType);
+ actualCancelable = event.cancelable;
+
+ assertEquals("cancelable",expectedCancelable,actualCancelable);
+ actualCanBubble = event.bubbles;
+
+ assertEquals("canBubble",expectedCanBubble,actualCanBubble);
+
+}
+
+
+
+
+function runTest() {
+ initEvent05();
+}
diff --git a/LayoutTests/dom/html/level2/events/initEvent06-expected.txt b/LayoutTests/dom/html/level2/events/initEvent06-expected.txt
new file mode 100644
index 0000000..e5090ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/events/initEvent06.html b/LayoutTests/dom/html/level2/events/initEvent06.html
new file mode 100644
index 0000000..88ef849
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent06.html
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<!-- This is comment number 1.-->
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>hc_staff</title><script type="text/javascript" src="selfhtml.js"></script><script charset="UTF-8" type="text/javascript" src="initEvent06.js"></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></head><body onload="loadComplete()">
+ <p>
+ <em>EMP0001</em>
+ <strong>Margaret Martin</strong>
+ <code>Accountant</code>
+ <sup>56,000</sup>
+ <var>Female</var>
+ <acronym title="Yes">1230 North Ave. Dallas, Texas 98551</acronym>
+ </p>
+ <p>
+ <em>EMP0002</em>
+ <strong>Martha RaynoldsThis is a CDATASection with EntityReference number 2 &amp;ent2;
+This is an adjacent CDATASection with a reference to a tab &amp;tab;</strong>
+ <code>Secretary</code>
+ <sup>35,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Yes">&beta; Dallas, &gamma;
+ 98554</acronym>
+ </p>
+ <p>
+ <em>EMP0003</em>
+ <strong>Roger
+ Jones</strong>
+ <code>Department Manager</code>
+ <sup>100,000</sup>
+ <var>&delta;</var>
+ <acronym title="Yes" class="No">PO Box 27 Irving, texas 98553</acronym>
+ </p>
+ <p>
+ <em>EMP0004</em>
+ <strong>Jeny Oconnor</strong>
+ <code>Personnel Director</code>
+ <sup>95,000</sup>
+ <var>Female</var>
+ <acronym title="Yes" class="Y&alpha;">27 South Road. Dallas, Texas 98556</acronym>
+ </p>
+ <p>
+ <em>EMP0005</em>
+ <strong>Robert Myers</strong>
+ <code>Computer Specialist</code>
+ <sup>90,000</sup>
+ <var>male</var>
+ <acronym title="Yes">1821 Nordic. Road, Irving Texas 98558</acronym>
+ </p>
+</body></html>
diff --git a/LayoutTests/dom/html/level2/events/initEvent06.js b/LayoutTests/dom/html/level2/events/initEvent06.js
new file mode 100644
index 0000000..1c8d5bb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/initEvent06.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+ checkFeature("MutationEvents", "2.0");
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hc_staff");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The Event.initEvent method is called for event returned by
+DocumentEvent.createEvent("MutationEvents")
+and the state is checked to see if it reflects the parameters. initEvent may be
+called multiple times and the last time is definitive.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent
+*/
+function initEvent06() {
+ var success;
+ if(checkInitialization(builder, "initEvent06") != null) return;
+ var doc;
+ var event;
+ var expectedEventType = "rotate";
+ var actualEventType;
+ var actualCanBubble;
+ var actualCancelable;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hc_staff");
+ event = doc.createEvent("MutationEvents");
+ assertNotNull("notnull",event);
+event.initEvent("rotate",true,true);
+ actualEventType = event.type;
+
+ assertEquals("type","rotate",actualEventType);
+ actualCancelable = event.cancelable;
+
+ assertEquals("cancelable",true,actualCancelable);
+ actualCanBubble = event.bubbles;
+
+ assertEquals("canBubble",true,actualCanBubble);
+ event.initEvent("shear",false,false);
+ actualEventType = event.type;
+
+ assertEquals("type2","shear",actualEventType);
+ actualCancelable = event.cancelable;
+
+ assertEquals("cancelable2",false,actualCancelable);
+ actualCanBubble = event.bubbles;
+
+ assertEquals("canBubble2",false,actualCanBubble);
+
+}
+
+
+
+
+function runTest() {
+ initEvent06();
+}
diff --git a/LayoutTests/dom/html/level2/events/resources/COPYRIGHT.html b/LayoutTests/dom/html/level2/events/resources/COPYRIGHT.html
new file mode 100644
index 0000000..abf8b73
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/resources/COPYRIGHT.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
+ <title>W3C IPR SOFTWARE NOTICE</title>
+<style type="text/css">
+<!--
+html, body { background: #fff; color: #000; } /* body for Windows IE3 */
+-->
+</style>
+ </head>
+ <body>
+ <h1>
+ W3C IPR SOFTWARE NOTICE
+ </h1>
+ <h3>
+ Copyright &copy; 2002-2004 <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved.
+ </h3>
+ <p>
+ The DOM Conformance Test Suite for Level 2 events is published under
+ the W3C Software Copyright Notice and License. The software
+ license requires "Notice of any changes or modifications to the
+ W3C files, including the date changes were made." Consequently,
+ modified versions of the DOM ECMAScript or Java tests must
+ document that they do not conform to the DOM Conformance Test
+ Suites; in the case of the Java language binding, the package
+ names can no longer be in the 'org.w3c' package.
+ </p>
+ <p>
+ <b>Note:</b> The original version of the W3C Software Copyright Notice
+ and License could be found at <a
+ href='http://www.w3.org/Consortium/Legal/copyright-software-19980720'>http://www.w3.org/Consortium/Legal/copyright-software-19980720</a>
+ </p>
+ <h3>
+ Copyright &copy; 1994-2004 <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved. http://www.w3.org/Consortium/Legal/
+ </h3>
+ <p>
+ This W3C work (including software, documents, or other related items) is
+ being provided by the copyright holders under the following license. By
+ obtaining, using and/or copying this work, you (the licensee) agree that
+ you have read, understood, and will comply with the following terms and
+ conditions:
+ </p>
+ <p>
+ Permission to use, copy, and modify this software and its documentation,
+ with or without modification,&nbsp; for any purpose and without fee or
+ royalty is hereby granted, provided that you include the following on ALL
+ copies of the software and documentation or portions thereof, including
+ modifications, that you make:
+ </p>
+ <ol>
+ <li>
+ The full text of this NOTICE in a location viewable to users of the
+ redistributed or derivative work.
+ </li>
+ <li>
+ Any pre-existing intellectual property disclaimers, notices, or terms
+ and conditions. If none exist, a short notice of the following form
+ (hypertext is preferred, text is permitted) should be used within the
+ body of any redistributed or derivative code: "Copyright &copy;
+ [$date-of-software] <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved. http://www.w3.org/Consortium/Legal/"
+ </li>
+ <li>
+ Notice of any changes or modifications to the W3C files, including the
+ date changes were made. (We recommend you provide URIs to the location
+ from which the code is derived.)
+ </li>
+ </ol>
+ <p>
+ THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT
+ HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED,
+ INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS
+ FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR
+ DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
+ TRADEMARKS OR OTHER RIGHTS.
+ </p>
+ <p>
+ COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
+ CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
+ DOCUMENTATION.
+ </p>
+ <p>
+ The name and trademarks of copyright holders may NOT be used in
+ advertising or publicity pertaining to the software without specific,
+ written prior permission. Title to copyright in this software and any
+ associated documentation will at all times remain with copyright
+ holders.
+ </p>
+ </body>
+</html>
diff --git a/LayoutTests/dom/html/level2/events/selfhtml.js b/LayoutTests/dom/html/level2/events/selfhtml.js
new file mode 100644
index 0000000..06b0cc1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/events/selfhtml.js
@@ -0,0 +1,721 @@
+/*
+Copyright (c) 2001-2005 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+ function assertSize(descr, expected, actual) {
+ var actualSize;
+ assertNotNull(descr, actual);
+ actualSize = actual.length;
+ assertEquals(descr, expected, actualSize);
+ }
+
+ function assertEqualsAutoCase(context, descr, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if(context == "attribute") {
+ assertEquals(descr, expected.toLowerCase(), actual.toLowerCase());
+ } else {
+ assertEquals(descr, expected.toUpperCase(), actual);
+ }
+ } else {
+ assertEquals(descr, expected, actual);
+ }
+ }
+
+
+ function assertEqualsCollectionAutoCase(context, descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ if (expectedValue.toLowerCase() == actual[j].toLowerCase()) {
+ matches++;
+ }
+ } else {
+ if (expectedValue.toUpperCase() == actual[j]) {
+ matches++;
+ }
+ }
+ } else {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+ function assertEqualsCollection(descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+
+ function assertEqualsListAutoCase(context, descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ assertEqualsAutoCase(context, descr, expected[i], actual[i]);
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+
+ function assertEqualsList(descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ if(expected[i] != actual[i]) {
+ assertEquals(descr, expected[i], actual[i]);
+ }
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+ function assertInstanceOf(descr, type, obj) {
+ if(type == "Attr") {
+ assertEquals(descr,2,obj.nodeType);
+ var specd = obj.specified;
+ }
+ }
+
+ function assertSame(descr, expected, actual) {
+ if(expected != actual) {
+ assertEquals(descr, expected.nodeType, actual.nodeType);
+ assertEquals(descr, expected.nodeValue, actual.nodeValue);
+ }
+ }
+
+ function assertURIEquals(assertID, scheme, path, host, file, name, query, fragment, isAbsolute, actual) {
+ //
+ // URI must be non-null
+ assertNotNull(assertID, actual);
+
+ var uri = actual;
+
+ var lastPound = actual.lastIndexOf("#");
+ var actualFragment = "";
+ if(lastPound != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastPound);
+ actualFragment = actual.substring(lastPound+1);
+ }
+ if(fragment != null) assertEquals(assertID,fragment, actualFragment);
+
+ var lastQuestion = uri.lastIndexOf("?");
+ var actualQuery = "";
+ if(lastQuestion != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastQuestion);
+ actualQuery = actual.substring(lastQuestion+1);
+ }
+ if(query != null) assertEquals(assertID, query, actualQuery);
+
+ var firstColon = uri.indexOf(":");
+ var firstSlash = uri.indexOf("/");
+ var actualPath = uri;
+ var actualScheme = "";
+ if(firstColon != -1 && firstColon < firstSlash) {
+ actualScheme = uri.substring(0,firstColon);
+ actualPath = uri.substring(firstColon + 1);
+ }
+
+ if(scheme != null) {
+ assertEquals(assertID, scheme, actualScheme);
+ }
+
+ if(path != null) {
+ assertEquals(assertID, path, actualPath);
+ }
+
+ if(host != null) {
+ var actualHost = "";
+ if(actualPath.substring(0,2) == "//") {
+ var termSlash = actualPath.substring(2).indexOf("/") + 2;
+ actualHost = actualPath.substring(0,termSlash);
+ }
+ assertEquals(assertID, host, actualHost);
+ }
+
+ if(file != null || name != null) {
+ var actualFile = actualPath;
+ var finalSlash = actualPath.lastIndexOf("/");
+ if(finalSlash != -1) {
+ actualFile = actualPath.substring(finalSlash+1);
+ }
+ if (file != null) {
+ assertEquals(assertID, file, actualFile);
+ }
+ if (name != null) {
+ var actualName = actualFile;
+ var finalDot = actualFile.lastIndexOf(".");
+ if (finalDot != -1) {
+ actualName = actualName.substring(0, finalDot);
+ }
+ assertEquals(assertID, name, actualName);
+ }
+ }
+
+ if(isAbsolute != null) {
+ assertEquals(assertID, isAbsolute, actualPath.substring(0,1) == "/");
+ }
+ }
+
+
+// size() used by assertSize element
+function size(collection)
+{
+ return collection.length;
+}
+
+function same(expected, actual)
+{
+ return expected === actual;
+}
+
+function equalsAutoCase(context, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ return expected.toLowerCase() == actual;
+ }
+ return expected.toUpperCase() == actual;
+ }
+ return expected == actual;
+}
+
+function createTempURI(scheme) {
+ if (scheme == "http") {
+ return "http://localhost:8080/webdav/tmp" + Math.floor(Math.random() * 100000) + ".xml";
+ }
+ return "file:///tmp/domts" + Math.floor(Math.random() * 100000) + ".xml";
+}
+
+
+
+function EventMonitor() {
+ this.atEvents = new Array();
+ this.bubbledEvents = new Array();
+ this.capturedEvents = new Array();
+ this.allEvents = new Array();
+}
+
+EventMonitor.prototype.handleEvent = function(evt) {
+ switch(evt.eventPhase) {
+ case 1:
+ monitor.capturedEvents[monitor.capturedEvents.length] = evt;
+ break;
+
+ case 2:
+ monitor.atEvents[monitor.atEvents.length] = evt;
+ break;
+
+ case 3:
+ monitor.bubbledEvents[monitor.bubbledEvents.length] = evt;
+ break;
+ }
+ monitor.allEvents[monitor.allEvents.length] = evt;
+}
+
+function DOMErrorImpl(err) {
+ this.severity = err.severity;
+ this.message = err.message;
+ this.type = err.type;
+ this.relatedException = err.relatedException;
+ this.relatedData = err.relatedData;
+ this.location = err.location;
+}
+
+
+
+function DOMErrorMonitor() {
+ this.allErrors = new Array();
+}
+
+DOMErrorMonitor.prototype.handleError = function(err) {
+ errorMonitor.allErrors[errorMonitor.allErrors.length] = new DOMErrorImpl(err);
+}
+
+DOMErrorMonitor.prototype.assertLowerSeverity = function(id, severity) {
+ var i;
+ for (i = 0; i < this.allErrors.length; i++) {
+ if (this.allErrors[i].severity >= severity) {
+ assertEquals(id, severity - 1, this.allErrors[i].severity);
+ }
+ }
+}
+
+function UserDataNotification(operation, key, data, src, dst) {
+ this.operation = operation;
+ this.key = key;
+ this.data = data;
+ this.src = src;
+ this.dst = dst;
+}
+
+function UserDataMonitor() {
+ this.allNotifications = new Array();
+}
+
+UserDataMonitor.prototype.handle = function(operation, key, data, src, dst) {
+ userDataMonitor.allNotifications[userDataMonitor.allNotifications.length] =
+ new UserDataNotification(operation, key, data, src, dst);
+}
+
+
+
+function HTMLBuilder() {
+ this.contentType = "text/html";
+ this.supportedContentTypes = [ "text/html" ];
+
+ this.supportsAsyncChange = false;
+ this.async = false;
+ this.fixedAttributeNames = [
+ "validating", "expandEntityReferences", "coalescing",
+ "signed", "hasNullString", "ignoringElementContentWhitespace", "namespaceAware", "ignoringComments", "schemaValidating"];
+
+ this.fixedAttributeValues = [false, true, false, true, true , false, false, false, false ];
+ this.configurableAttributeNames = [ ];
+ this.configurableAttributeValues = [ ];
+ this.initializationError = null;
+ this.initializationFatalError = null;
+ this.skipIncompatibleTests = true;
+ this.documentURLs = new Array();
+ this.documentVarnames = new Array();
+}
+
+HTMLBuilder.prototype.hasFeature = function(feature, version) {
+ return document.implementation.hasFeature(feature, version);
+}
+
+HTMLBuilder.prototype.getImplementation = function() {
+ return document.implementation;
+}
+
+HTMLBuilder.prototype.preload = function(frame, varname, url) {
+ var i;
+ this.documentVarnames[this.documentVarnames.length] = varname;
+ this.documentURLs[this.documentURLs.length] = url;
+ if (this.documentURLs.length > 1) {
+ //
+ // if all the urls are not the same
+ //
+ for (i = 1; i < this.documentURLs.length; i++) {
+ if (this.documentURLs[i] != this.documentURLs[0]) {
+ throw "Tests with multiple loads of different documents are not currently supported";
+ }
+ }
+ }
+ return 1;
+}
+
+HTMLBuilder.prototype.cloneNode = function(srcNode, doc) {
+ var clone = null;
+ switch(srcNode.nodeType) {
+ //
+ // element
+ case 1:
+ clone = doc.createElement(srcNode.nodeName.toLowerCase());
+ var attrs = srcNode.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+ var srcChild = srcNode.firstChild;
+ while(srcChild != null) {
+ var cloneChild = this.cloneNode(srcChild, doc);
+ if (cloneChild != null) {
+ clone.appendChild(cloneChild);
+ }
+ srcChild = srcChild.nextSibling;
+ }
+ break;
+
+ case 3:
+ clone = doc.createTextNode(srcNode.nodeValue);
+ break;
+
+ case 4:
+ clone = doc.createCDATASection(srcNode.nodeValue);
+ break;
+
+ case 7:
+ clone = doc.createProcessingInstruction(srcNode.nodeValue);
+ break;
+
+ case 8:
+ clone = doc.createComment(srcNode.nodeValue);
+ break;
+ }
+ return clone;
+
+}
+
+
+HTMLBuilder.prototype.load = function(frame, varname, url) {
+ if (this.documentVarnames[0] == varname) {
+ return document;
+ }
+ //
+ //
+ // not a perfect way to do this
+ // Document.cloneNode is implementation dependent but exists in L1
+ // and implemented in IE. The alternative brute force copy
+ // only works in L2 or higher implementations and can't copy
+ // entity and notation definitions, etc.
+ var clone = null;
+ try {
+ clone = document.cloneNode(true);
+ } catch(ex) {
+ }
+ if (clone == null) {
+ clone = document.implementation.createDocument(
+ document.documentElement.namespaceURI,
+ document.documentElement.nodeName,
+ null);
+ //
+ // Work-around since
+ // Safari does not create document element
+ // create document.
+ if (clone.documentElement == null) {
+ clone.appendChild(clone.createElement(document.documentElement.nodeName));
+ }
+ var attrs = document.documentElement.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.documentElement.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+
+ var srcNode = document.firstChild;
+ while(srcNode != null && srcNode.nodeType != 1) {
+ if (srcNode.nodeType != 10) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.insertBefore(cloneNode, clone.documentElement);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.nextSibling;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.appendChild(cloneNode);
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.firstChild;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ if (cloneNode != null) {
+ clone.documentElement.appendChild(cloneNode);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ }
+ return clone;
+}
+
+HTMLBuilder.prototype.getImplementationAttribute = function(attr) {
+ for (var i = 0; i < this.fixedAttributeNames.length; i++) {
+ if (this.fixedAttributeNames[i] == attr) {
+ return this.fixedAttributeValues[i];
+ }
+ }
+ throw "Unrecognized implementation attribute: " + attr;
+}
+
+
+HTMLBuilder.prototype.setImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ if (supported != value) {
+ this.initializationError = "HTML loader does not support " + attribute + "=" + value;
+ }
+}
+
+HTMLBuilder.prototype.canSetImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ return (supported == value);
+}
+
+
+
+
+function createConfiguredBuilder() {
+ return new HTMLBuilder();
+}
+
+function catchInitializationError(buildr, ex) {
+ buildr.initializationError = ex;
+ buildr.initializationFatalError = ex;
+}
+
+function toLowerArray(src) {
+ var newArray = new Array();
+ var i;
+ for (i = 0; i < src.length; i++) {
+ newArray[i] = src[i].toLowerCase();
+ }
+ return newArray;
+}
+
+
+function checkFeature(feature, version)
+{
+ if (!builder.hasFeature(feature, version))
+ {
+ //
+ // don't throw exception so that users can select to ignore the precondition
+ //
+ builder.initializationError = "builder does not support feature " + feature + " version " + version;
+ }
+}
+
+function setResult(resultType, message) {
+ var testName = getTargetURI();
+ document.open();
+ document.writeln("<html><head>");
+ document.writeln("<meta HTTP-EQUIV='Content-Type' CONTENT='text/html; CHARSET=utf-8'>");
+ document.write("<title>");
+ document.write(testName + ":" + resultType);
+ document.write("</title></head><body><table width='100%' border='1' style='color:");
+ if (resultType == null) {
+ document.writeln("green'><tr><td>Test:</td><td>" + testName + "</td></tr><tr><td>Status:</td><td>Success</td></tr>");
+ } else {
+ if (resultType == "skip") {
+ document.writeln("blue'><tr><td>Test:</td><td>" + testName + "</td></tr><tr><td>Status:</td><td>Skipped</td></tr>");
+ } else {
+ document.writeln("red'><tr><td>Test:</td><td>" + testName + "</td><td></tr><tr><td>Status:</td><td>" + resultType + "</td></tr>");
+ }
+ }
+ if (message != null) {
+ document.writeln("<tr><td>Detail:</td><td>" + message + "</td></tr>");
+ }
+ document.write("</table></body></html>");
+ document.close();
+ if (parent != window) {
+ parent.setResult(testName, resultType, message);
+ }
+}
+
+function checkInitialization(buildr, testname) {
+ return buildr.initializationError;
+}
+
+function preload(docRef, varname, href) {
+ return builder.preload(docRef, varname, href);
+}
+
+
+function load(docRef, varname, href) {
+ return builder.load(docRef, varname, href);
+}
+
+
+function getImplementationAttribute(attr) {
+ return builder.getImplementationAttribute(attr);
+}
+
+
+function setImplementationAttribute(attribute, value) {
+ builder.setImplementationAttribute(attribute, value);
+}
+
+function createXPathEvaluator(doc) {
+ try {
+ return doc.getFeature("XPath", null);
+ }
+ catch(ex) {
+ }
+ return doc;
+}
+
+
+function getImplementation() {
+ return builder.getImplementation();
+}
+
+function assertEquals(id, expected, actual) {
+ var myActual;
+ if (expected != actual) {
+ myActual = actual;
+ if (actual == null) {
+ myActual = "null";
+ }
+ throw "failure:" + id + ": assertEquals failed, actual " + myActual + ", expected " + expected + ".";
+ }
+}
+
+function assertNull(id, actual) {
+ if (actual != null) {
+ throw "failure:" + id + ": assertNull failed, actual " + actual;
+ }
+}
+
+
+function assertTrue(id, actual) {
+ if (!actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+
+function assertFalse(id, actual) {
+ if (actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+function assertNotNull(id, actual) {
+ if (actual == null) {
+ throw "failure:" + id + ": assertNotNull failed";
+ }
+}
+
+function fail(id) {
+ throw "failure:" + id + ": fail";
+}
+
+
+
+function getSuffix(contentType) {
+ switch(contentType) {
+ case "text/xml":
+ return ".xml";
+
+ case "application/xhtml+xml":
+ return ".xhtml";
+
+ case "image/svg+xml":
+ return ".svg";
+
+ case "text/mathml":
+ return ".mml";
+ }
+ return ".html";
+}
+
+
+function getResourceURI(name, scheme, contentType) {
+ var base = document.documentURI;
+ if (base == null) {
+ base = "";
+ } else {
+ base = base.substring(0, base.lastIndexOf('/') + 1) + "files/";
+ }
+ return base + name + getSuffix(contentType);
+}
+
+
+
+function startTest() {
+
+//
+// WebKit modification: 18-August-2005
+//
+// Inform the test controller that this test has a text-format result and so should
+// be dumped as text, and also that the dump should not occur automatically.
+//
+if (window.layoutTestController) {
+ layoutTestController.dumpAsText();
+ layoutTestController.waitUntilDone();
+}
+//
+// End WebKit modification
+//
+
+ //
+ // invoke test setup
+ //
+ setUpPage();
+
+ try {
+ runTest();
+ if (builder.initializationError == null) {
+ setResult(null, null);
+ } else {
+ setResult("skip", builder.initializationError);
+ }
+ } catch(ex) {
+ if (typeof(ex.substring) != 'undefined' && ex.substring(0, 8) == "failure:") {
+ setResult("failure", ex.substring(8));
+ } else {
+ setResult("error", ex);
+ }
+ }
+
+//
+// WebKit modification: 18-August-2005
+//
+// Inform the test controller that this test is complete, so it's time to dump.
+//
+ if (window.layoutTestController) {
+ layoutTestController.notifyDone();
+ }
+//
+// End WebKit modification
+//
+
+}
diff --git a/LayoutTests/dom/html/level2/html/AppletsCollection-expected.txt b/LayoutTests/dom/html/level2/html/AppletsCollection-expected.txt
new file mode 100644
index 0000000..2ce5a82
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/AppletsCollection-expected.txt
@@ -0,0 +1,16 @@
+This test demonstrates a couple of object tags being added that do not contain Java applets. Previously these Object element would be included in the document.applets collection even though the spec says that collection should contain only Applet elements and Object elements that contain applets.
+
+As the document is parsed, javascript will output the size of the document.applets collection after each Object tag is inserted into the document. For this test the count should always be zero.
+
+Tragically we cannot have any actual Java Applets referenced here because when DRT loads the Java VM it hangs. If that bug is resolved this test should also be amended to add a dummy Applet using both the Applet tag and a few different uses of the Object tag.
+
+Applets length is currently 0
+
+
+Applets length is currently 0
+
+Nothing here!
+Applets length is currently 0
+
+
+Applets length is currently 0
diff --git a/LayoutTests/dom/html/level2/html/AppletsCollection.html b/LayoutTests/dom/html/level2/html/AppletsCollection.html
new file mode 100644
index 0000000..ef6fbfa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/AppletsCollection.html
@@ -0,0 +1,46 @@
+<html>
+<head>
+<title>Fix for 13636</title>
+<script>
+ if (window.layoutTestController) {
+ layoutTestController.dumpAsText();
+ }
+
+ function outputAppletsLength() {
+ document.write("<p>");
+ if (document.applets)
+ document.write("Applets length is currently " + document.applets.length);
+ else
+ document.write("There is no applets collection yet");
+ document.write("</p>");
+ }
+
+</script>
+</head>
+<body>
+<p>This test demonstrates a couple of object tags being added that do not contain Java applets. Previously these Object element would be included in the document.applets collection even though the spec says that collection should contain only Applet elements and Object elements that contain applets.</p>
+<p>As the document is parsed, javascript will output the size of the document.applets collection after each Object tag is inserted into the document. For this test the count should always be zero.</p>
+<p>Tragically we cannot have any actual Java Applets referenced here because when DRT loads the Java VM it hangs. If that bug is resolved this test should also be amended to add a dummy Applet using both the Applet tag and a few different uses of the Object tag.</p>
+
+<script>outputAppletsLength();</script>
+
+<object type="application/not-a-real-applet" width=500 height=50>
+<param name="code" value="ZOMG.class">
+<param name="text" value="ZOMG OBJECT JAVA APPLET (but not really!)">
+</object>
+
+<script>outputAppletsLength();</script>
+
+<object width=500 height=50>
+Nothing here!
+</object>
+
+<script>outputAppletsLength();</script>
+
+<object data="w3c_main.png" type="image/png">
+</object>
+
+<script>outputAppletsLength();</script>
+
+</body>
+</html>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement01-expected.txt
new file mode 100644
index 0000000..0342ba2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement01.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement01.html
new file mode 100644
index 0000000..274ea85
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement01.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement01.js
new file mode 100644
index 0000000..78550a8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The accessKey attribute is a single character access key to give
+ access to the form control.
+
+ Retrieve the accessKey attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89647724
+*/
+function HTMLAnchorElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("accessKeyLink","g",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement02-expected.txt
new file mode 100644
index 0000000..adb7b87
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement02.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement02.html
new file mode 100644
index 0000000..6e25af0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement02.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement02.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement02.js
new file mode 100644
index 0000000..1ec05cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The charset attribute indicates the character encoding of the linked
+ resource.
+
+ Retrieve the charset attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67619266
+*/
+function HTMLAnchorElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharset;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcharset = testNode.charset;
+
+ assertEquals("charsetLink","US-ASCII",vcharset);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement03-expected.txt
new file mode 100644
index 0000000..b620f22
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement03.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement03.html
new file mode 100644
index 0000000..b2dc7ae
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement03.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement03.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement03.js
new file mode 100644
index 0000000..93f3d00
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The coords attribute is a comma-seperated list of lengths, defining
+ an active region geometry.
+
+ Retrieve the coords attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92079539
+*/
+function HTMLAnchorElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vcoords;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcoords = testNode.coords;
+
+ assertEquals("coordsLink","0,0,100,100",vcoords);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement04-expected.txt
new file mode 100644
index 0000000..ea651f8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement04.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement04.html
new file mode 100644
index 0000000..18fe5a6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement04.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement04.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement04.js
new file mode 100644
index 0000000..291c521
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The href attribute contains the URL of the linked resource.
+
+ Retrieve the href attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88517319
+*/
+function HTMLAnchorElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vhref;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vhref = testNode.href;
+
+ assertURIEquals("hrefLink",null,null,null,"submit.gif",null,null,null,null,vhref);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement05-expected.txt
new file mode 100644
index 0000000..c9f4040
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement05.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement05.html
new file mode 100644
index 0000000..a3bcd5d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement05.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement05.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement05.js
new file mode 100644
index 0000000..d992366
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The hreflang attribute contains the language code of the linked resource.
+
+ Retrieve the hreflang attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87358513
+*/
+function HTMLAnchorElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vhreflink;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vhreflink = testNode.hreflang;
+
+ assertEquals("hreflangLink","en",vhreflink);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement06-expected.txt
new file mode 100644
index 0000000..3a07e8c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement06.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement06.html
new file mode 100644
index 0000000..4bbbdd6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement06.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement06.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement06.js
new file mode 100644
index 0000000..853f6f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement06.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute contains the anchor name.
+
+ Retrieve the name attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32783304
+*/
+function HTMLAnchorElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","Anchor",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement07-expected.txt
new file mode 100644
index 0000000..83e995e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement07.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement07.html
new file mode 100644
index 0000000..c0f8d52
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement07.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement07.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement07.js
new file mode 100644
index 0000000..aeea05e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement07.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rel attribute contains the forward link type.
+
+ Retrieve the rel attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-3815891
+*/
+function HTMLAnchorElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vrel;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vrel = testNode.rel;
+
+ assertEquals("relLink","GLOSSARY",vrel);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement08-expected.txt
new file mode 100644
index 0000000..b4a1795
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement08.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement08.html
new file mode 100644
index 0000000..3863aa6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement08.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement08.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement08.js
new file mode 100644
index 0000000..d685536
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement08.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rev attribute contains the reverse link type
+
+ Retrieve the rev attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58259771
+*/
+function HTMLAnchorElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vrev;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vrev = testNode.rev;
+
+ assertEquals("revLink","STYLESHEET",vrev);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement09-expected.txt
new file mode 100644
index 0000000..92b7d70
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement09.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement09.html
new file mode 100644
index 0000000..d35bf12
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement09.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement09.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement09.js
new file mode 100644
index 0000000..2d1349d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement09.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The shape attribute contains the shape of the active area.
+
+ Retrieve the shape attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49899808
+*/
+function HTMLAnchorElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vshape;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vshape = testNode.shape;
+
+ assertEquals("shapeLink","rect",vshape);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement10-expected.txt
new file mode 100644
index 0000000..7571499
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement10.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement10.html
new file mode 100644
index 0000000..bdcec76
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement10.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement10.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement10.js
new file mode 100644
index 0000000..5817792
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement10.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tabIndex attribute contains an index that represents the elements
+ position in the tabbing order.
+
+ Retrieve the tabIndex attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41586466
+*/
+function HTMLAnchorElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",22,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement11-expected.txt
new file mode 100644
index 0000000..92e31d1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement11.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement11.html
new file mode 100644
index 0000000..0154af1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement11.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A HREF="./pix/submit.gif" TARGET="dynamic">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement11.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement11.js
new file mode 100644
index 0000000..15d53c6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement11.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The target attribute specifies the frame to render the source in.
+
+ Retrieve the target attribute and examine it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6414197
+*/
+function HTMLAnchorElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vtarget;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor2");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtarget = testNode.target;
+
+ assertEquals("targetLink","dynamic",vtarget);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement12-expected.txt
new file mode 100644
index 0000000..ae4267f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement12.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement12.html
new file mode 100644
index 0000000..6a0c2be
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement12.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement12.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement12.js
new file mode 100644
index 0000000..69d4124
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement12.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute contains the advisory content model.
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63938221
+*/
+function HTMLAnchorElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","image/gif",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement13-expected.txt
new file mode 100644
index 0000000..fd3f598
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement13.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement13.html
new file mode 100644
index 0000000..3ba3e70
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement13.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement13.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement13.js
new file mode 100644
index 0000000..64e1fc1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement13.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+HTMLAnchorElement.blur should surrender input focus.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65068939
+*/
+function HTMLAnchorElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement13") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ testNode.blur();
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAnchorElement14-expected.txt
new file mode 100644
index 0000000..e804fc8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement14.html b/LayoutTests/dom/html/level2/html/HTMLAnchorElement14.html
new file mode 100644
index 0000000..561a2c1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement14.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAnchorElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAnchorElement14.js b/LayoutTests/dom/html/level2/html/HTMLAnchorElement14.js
new file mode 100644
index 0000000..5f8600d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAnchorElement14.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+HTMLAnchorElement.focus should capture input focus.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47150313
+*/
+function HTMLAnchorElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLAnchorElement14") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ testNode.focus();
+
+}
+
+
+
+
+function runTest() {
+ HTMLAnchorElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement01-expected.txt
new file mode 100644
index 0000000..7272647
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement01.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement01.html
new file mode 100644
index 0000000..db685c4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement01.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement01.js
new file mode 100644
index 0000000..6b1fb93
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the alignment of the object(Vertically
+ or Horizontally) with respect to its surrounding text.
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8049912
+*/
+function HTMLAppletElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","bottom".toLowerCase(),valign.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement02-expected.txt
new file mode 100644
index 0000000..ff8a2d2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement02.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement02.html
new file mode 100644
index 0000000..7d8e75c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement02.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement02.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement02.js
new file mode 100644
index 0000000..b6af5b8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The alt attribute specifies the alternate text for user agents not
+ rendering the normal context of this element.
+
+ Retrieve the alt attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58610064
+*/
+function HTMLAppletElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var valt;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valt = testNode.alt;
+
+ assertEquals("altLink","Applet Number 1",valt);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement03-expected.txt
new file mode 100644
index 0000000..35df925
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement03.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement03.html
new file mode 100644
index 0000000..75e8e59
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement03.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement03.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement03.js
new file mode 100644
index 0000000..edd5a52
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The archive attribute specifies a comma-seperated archive list.
+
+ Retrieve the archive attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14476360
+*/
+function HTMLAppletElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var varchive;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ varchive = testNode.archive;
+
+ assertEquals("archiveLink","",varchive);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement04-expected.txt
new file mode 100644
index 0000000..859f672
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement04.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement04.html
new file mode 100644
index 0000000..eb30f4f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement04.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement04.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement04.js
new file mode 100644
index 0000000..c454fb7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The code attribute specifies the applet class file.
+
+ Retrieve the code attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-61509645
+*/
+function HTMLAppletElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vcode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcode = testNode.code;
+
+ assertEquals("codeLink","org/w3c/domts/DOMTSApplet.class",vcode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement05-expected.txt
new file mode 100644
index 0000000..a850767
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement05.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement05.html
new file mode 100644
index 0000000..8dbbf3d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement05.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement05.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement05.js
new file mode 100644
index 0000000..e9dde62
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The codeBase attribute specifies an optional base URI for the applet.
+
+ Retrieve the codeBase attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6581160
+*/
+function HTMLAppletElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vcodebase;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcodebase = testNode.codeBase;
+
+ assertEquals("codebase","applets",vcodebase);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement06-expected.txt
new file mode 100644
index 0000000..48c40e5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement06.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement06.html
new file mode 100644
index 0000000..bceda4f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement06.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement06.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement06.js
new file mode 100644
index 0000000..f24ece2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement06.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The height attribute overrides the height.
+
+ Retrieve the height attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90184867
+*/
+function HTMLAppletElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vheight = testNode.height;
+
+ assertEquals("heightLink","306",vheight);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement07-expected.txt
new file mode 100644
index 0000000..338b610
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement07.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement07.html
new file mode 100644
index 0000000..bad0e3c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement07.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement07.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement07.js
new file mode 100644
index 0000000..745d4c0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement07.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The hspace attribute specifies the horizontal space to the left
+ and right of this image, applet, or object.
+
+ Retrieve the hspace attribute and examine it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-1567197
+*/
+function HTMLAppletElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vhspace;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vhspace = testNode.hspace;
+
+ assertEquals("hspaceLink",0,vhspace);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement08-expected.txt
new file mode 100644
index 0000000..5f1624a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement08.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement08.html
new file mode 100644
index 0000000..837b0c6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement08.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement08.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement08.js
new file mode 100644
index 0000000..cf22147
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement08.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies the name of the applet.
+
+ Retrieve the name attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39843695
+*/
+function HTMLAppletElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","applet1",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement09-expected.txt
new file mode 100644
index 0000000..dcfe32c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement09.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement09.html
new file mode 100644
index 0000000..96a580c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement09.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement09.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement09.js
new file mode 100644
index 0000000..d22fa3d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement09.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vspace attribute specifies the vertical space above and below
+ this image, applet or object.
+
+ Retrieve the vspace attribute and examine it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-22637173
+*/
+function HTMLAppletElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vvspace;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvspace = testNode.vspace;
+
+ assertEquals("vspaceLink",0,vvspace);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement10-expected.txt
new file mode 100644
index 0000000..ff0591c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement10.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement10.html
new file mode 100644
index 0000000..9930967
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement10.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" CODE="org/w3c/domts/DOMTSApplet.class" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement10.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement10.js
new file mode 100644
index 0000000..b055c97
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement10.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute overrides the regular width.
+
+ Retrieve the width attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16526327
+*/
+function HTMLAppletElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","301",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAppletElement11-expected.txt
new file mode 100644
index 0000000..70f1e43
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement11.html b/LayoutTests/dom/html/level2/html/HTMLAppletElement11.html
new file mode 100644
index 0000000..201b595
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement11.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Applet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAppletElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<APPLET ALIGN="bottom" ALT="Applet Number 1" ARCHIVE="" OBJECT="DOMTSApplet.dat" CODEBASE="applets" HEIGHT="306" HSPACE="0" NAME="applet1" VSPACE="0" WIDTH="301"></APPLET>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAppletElement11.js b/LayoutTests/dom/html/level2/html/HTMLAppletElement11.js
new file mode 100644
index 0000000..cfa82ee
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAppletElement11.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAppletElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "applet2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The object attribute specifies the serialized applet file.
+
+ Retrieve the object attribute and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93681523
+*/
+function HTMLAppletElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLAppletElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vobject;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "applet2");
+ nodeList = doc.getElementsByTagName("applet");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vobject = testNode.object;
+
+ assertEquals("object","DOMTSApplet.dat",vobject);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAppletElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAreaElement01-expected.txt
new file mode 100644
index 0000000..8e4c7bb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement01.html b/LayoutTests/dom/html/level2/html/HTMLAreaElement01.html
new file mode 100644
index 0000000..5099896
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement01.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAreaElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement01.js b/LayoutTests/dom/html/level2/html/HTMLAreaElement01.js
new file mode 100644
index 0000000..3ca6a43
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The accessKey attribute specifies a single character access key to
+ give access to the control form.
+
+ Retrieve the accessKey attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57944457
+*/
+function HTMLAreaElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLAreaElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("alignLink","a",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAreaElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAreaElement02-expected.txt
new file mode 100644
index 0000000..0cc7be1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement02.html b/LayoutTests/dom/html/level2/html/HTMLAreaElement02.html
new file mode 100644
index 0000000..bd88af0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement02.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAreaElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement02.js b/LayoutTests/dom/html/level2/html/HTMLAreaElement02.js
new file mode 100644
index 0000000..33ef24b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The alt attribute specifies an alternate text for user agents not
+ rendering the normal content of this element.
+
+ Retrieve the alt attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39775416
+*/
+function HTMLAreaElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLAreaElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var valt;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valt = testNode.alt;
+
+ assertEquals("altLink","Domain",valt);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAreaElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAreaElement03-expected.txt
new file mode 100644
index 0000000..647215b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement03.html b/LayoutTests/dom/html/level2/html/HTMLAreaElement03.html
new file mode 100644
index 0000000..740e7b0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement03.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAreaElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement03.js b/LayoutTests/dom/html/level2/html/HTMLAreaElement03.js
new file mode 100644
index 0000000..474f0df
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The coords attribute specifies a comma-seperated list of lengths,
+ defining an active region geometry.
+
+ Retrieve the coords attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66021476
+*/
+function HTMLAreaElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLAreaElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vcoords;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcoords = testNode.coords;
+
+ assertEquals("coordsLink","0,2,45,45",vcoords);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAreaElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAreaElement04-expected.txt
new file mode 100644
index 0000000..f9a5e61
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement04.html b/LayoutTests/dom/html/level2/html/HTMLAreaElement04.html
new file mode 100644
index 0000000..87275df
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement04.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAreaElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement04.js b/LayoutTests/dom/html/level2/html/HTMLAreaElement04.js
new file mode 100644
index 0000000..f051b09
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The href attribute specifies the URI of the linked resource.
+
+ Retrieve the href attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-34672936
+*/
+function HTMLAreaElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLAreaElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vhref;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vhref = testNode.href;
+
+ assertURIEquals("hrefLink",null,null,null,"dletter.html",null,null,null,null,vhref);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAreaElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAreaElement05-expected.txt
new file mode 100644
index 0000000..4e53918
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement05.html b/LayoutTests/dom/html/level2/html/HTMLAreaElement05.html
new file mode 100644
index 0000000..10966b7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement05.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAreaElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement05.js b/LayoutTests/dom/html/level2/html/HTMLAreaElement05.js
new file mode 100644
index 0000000..fbadf82
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The noHref attribute specifies that this area is inactive.
+
+ Retrieve the noHref attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-61826871
+*/
+function HTMLAreaElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLAreaElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vnohref;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vnohref = testNode.noHref;
+
+ assertFalse("noHrefLink",vnohref);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAreaElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAreaElement06-expected.txt
new file mode 100644
index 0000000..a0e3310
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement06.html b/LayoutTests/dom/html/level2/html/HTMLAreaElement06.html
new file mode 100644
index 0000000..aeea054
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement06.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAreaElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement06.js b/LayoutTests/dom/html/level2/html/HTMLAreaElement06.js
new file mode 100644
index 0000000..79b5165
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement06.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The shape attribute specifies the shape of the active area.
+
+ Retrieve the shape attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85683271
+*/
+function HTMLAreaElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLAreaElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vshape;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vshape = testNode.shape;
+
+ assertEquals("shapeLink","rect".toLowerCase(),vshape.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ HTMLAreaElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAreaElement07-expected.txt
new file mode 100644
index 0000000..cb27e26
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement07.html b/LayoutTests/dom/html/level2/html/HTMLAreaElement07.html
new file mode 100644
index 0000000..d9e2483
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement07.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAreaElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement07.js b/LayoutTests/dom/html/level2/html/HTMLAreaElement07.js
new file mode 100644
index 0000000..a74f649
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement07.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tabIndex attribute specifies an index that represents the element's
+ position in the tabbing order.
+
+ Retrieve the tabIndex attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8722121
+*/
+function HTMLAreaElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLAreaElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",10,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAreaElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLAreaElement08-expected.txt
new file mode 100644
index 0000000..e58f806
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement08.html b/LayoutTests/dom/html/level2/html/HTMLAreaElement08.html
new file mode 100644
index 0000000..f3176b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement08.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLAreaElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA HREF="./files/dletter.html" ALT="Domain" TARGET="dynamic">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLAreaElement08.js b/LayoutTests/dom/html/level2/html/HTMLAreaElement08.js
new file mode 100644
index 0000000..976887d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLAreaElement08.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The target specifies the frame to render the resource in.
+
+ Retrieve the target attribute and examine it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46054682
+*/
+function HTMLAreaElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLAreaElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vtarget;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area2");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtarget = testNode.target;
+
+ assertEquals("targetLink","dynamic",vtarget);
+
+}
+
+
+
+
+function runTest() {
+ HTMLAreaElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBRElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBRElement01-expected.txt
new file mode 100644
index 0000000..5361835
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBRElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBRElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBRElement01.html b/LayoutTests/dom/html/level2/html/HTMLBRElement01.html
new file mode 100644
index 0000000..b3831f7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBRElement01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - BR</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBRElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR CLEAR="none">
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBRElement01.js b/LayoutTests/dom/html/level2/html/HTMLBRElement01.js
new file mode 100644
index 0000000..26802d9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBRElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBRElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "br");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The clear attribute specifies control flow of text around floats.
+
+ Retrieve the clear attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82703081
+*/
+function HTMLBRElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLBRElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vclear;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "br");
+ nodeList = doc.getElementsByTagName("br");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclear = testNode.clear;
+
+ assertEquals("clearLink","none",vclear);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBRElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBaseElement01-expected.txt
new file mode 100644
index 0000000..b11747c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseElement01.html b/LayoutTests/dom/html/level2/html/HTMLBaseElement01.html
new file mode 100644
index 0000000..0a72a8f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseElement01.html
@@ -0,0 +1,824 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<BASE HREF="about:blank">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Base</TITLE>
+<script type='text/javascript'>/*
+Copyright (c) 2001-2005 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+//
+// Webkit modification: 11-August-2005
+//
+if (window.layoutTestController)
+ layoutTestController.dumpAsText();
+//
+// End modification
+//
+
+
+ function assertSize(descr, expected, actual) {
+ var actualSize;
+ assertNotNull(descr, actual);
+ actualSize = actual.length;
+ assertEquals(descr, expected, actualSize);
+ }
+
+ function assertEqualsAutoCase(context, descr, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if(context == "attribute") {
+ assertEquals(descr, expected.toLowerCase(), actual.toLowerCase());
+ } else {
+ assertEquals(descr, expected.toUpperCase(), actual);
+ }
+ } else {
+ assertEquals(descr, expected, actual);
+ }
+ }
+
+
+ function assertEqualsCollectionAutoCase(context, descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ if (expectedValue.toLowerCase() == actual[j].toLowerCase()) {
+ matches++;
+ }
+ } else {
+ if (expectedValue.toUpperCase() == actual[j]) {
+ matches++;
+ }
+ }
+ } else {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+ function assertEqualsCollection(descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+
+ function assertEqualsListAutoCase(context, descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ assertEqualsAutoCase(context, descr, expected[i], actual[i]);
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+
+ function assertEqualsList(descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ if(expected[i] != actual[i]) {
+ assertEquals(descr, expected[i], actual[i]);
+ }
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+ function assertInstanceOf(descr, type, obj) {
+ if(type == "Attr") {
+ assertEquals(descr,2,obj.nodeType);
+ var specd = obj.specified;
+ }
+ }
+
+ function assertSame(descr, expected, actual) {
+ if(expected != actual) {
+ assertEquals(descr, expected.nodeType, actual.nodeType);
+ assertEquals(descr, expected.nodeValue, actual.nodeValue);
+ }
+ }
+
+ function assertURIEquals(assertID, scheme, path, host, file, name, query, fragment, isAbsolute, actual) {
+ //
+ // URI must be non-null
+ assertNotNull(assertID, actual);
+
+ var uri = actual;
+
+ var lastPound = actual.lastIndexOf("#");
+ var actualFragment = "";
+ if(lastPound != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastPound);
+ actualFragment = actual.substring(lastPound+1);
+ }
+ if(fragment != null) assertEquals(assertID,fragment, actualFragment);
+
+ var lastQuestion = uri.lastIndexOf("?");
+ var actualQuery = "";
+ if(lastQuestion != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastQuestion);
+ actualQuery = actual.substring(lastQuestion+1);
+ }
+ if(query != null) assertEquals(assertID, query, actualQuery);
+
+ var firstColon = uri.indexOf(":");
+ var firstSlash = uri.indexOf("/");
+ var actualPath = uri;
+ var actualScheme = "";
+ if(firstColon != -1 && firstColon < firstSlash) {
+ actualScheme = uri.substring(0,firstColon);
+ actualPath = uri.substring(firstColon + 1);
+ }
+
+ if(scheme != null) {
+ assertEquals(assertID, scheme, actualScheme);
+ }
+
+ if(path != null) {
+ assertEquals(assertID, path, actualPath);
+ }
+
+ if(host != null) {
+ var actualHost = "";
+ if(actualPath.substring(0,2) == "//") {
+ var termSlash = actualPath.substring(2).indexOf("/") + 2;
+ actualHost = actualPath.substring(0,termSlash);
+ }
+ assertEquals(assertID, host, actualHost);
+ }
+
+ if(file != null || name != null) {
+ var actualFile = actualPath;
+ var finalSlash = actualPath.lastIndexOf("/");
+ if(finalSlash != -1) {
+ actualFile = actualPath.substring(finalSlash+1);
+ }
+ if (file != null) {
+ assertEquals(assertID, file, actualFile);
+ }
+ if (name != null) {
+ var actualName = actualFile;
+ var finalDot = actualFile.lastIndexOf(".");
+ if (finalDot != -1) {
+ actualName = actualName.substring(0, finalDot);
+ }
+ assertEquals(assertID, name, actualName);
+ }
+ }
+
+ if(isAbsolute != null) {
+ assertEquals(assertID, isAbsolute, actualPath.substring(0,1) == "/");
+ }
+ }
+
+
+// size() used by assertSize element
+function size(collection)
+{
+ return collection.length;
+}
+
+function same(expected, actual)
+{
+ return expected === actual;
+}
+
+function equalsAutoCase(context, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ return expected.toLowerCase() == actual;
+ }
+ return expected.toUpperCase() == actual;
+ }
+ return expected == actual;
+}
+
+function createTempURI(scheme) {
+ if (scheme == "http") {
+ return "http://localhost:8080/webdav/tmp" + Math.floor(Math.random() * 100000) + ".xml";
+ }
+ return "file:///tmp/domts" + Math.floor(Math.random() * 100000) + ".xml";
+}
+
+
+
+function EventMonitor() {
+ this.atEvents = new Array();
+ this.bubbledEvents = new Array();
+ this.capturedEvents = new Array();
+ this.allEvents = new Array();
+}
+
+EventMonitor.prototype.handleEvent = function(evt) {
+ switch(evt.eventPhase) {
+ case 1:
+ monitor.capturedEvents[monitor.capturedEvents.length] = evt;
+ break;
+
+ case 2:
+ monitor.atEvents[monitor.atEvents.length] = evt;
+ break;
+
+ case 3:
+ monitor.bubbledEvents[monitor.bubbledEvents.length] = evt;
+ break;
+ }
+ monitor.allEvents[monitor.allEvents.length] = evt;
+}
+
+function DOMErrorImpl(err) {
+ this.severity = err.severity;
+ this.message = err.message;
+ this.type = err.type;
+ this.relatedException = err.relatedException;
+ this.relatedData = err.relatedData;
+ this.location = err.location;
+}
+
+
+
+function DOMErrorMonitor() {
+ this.allErrors = new Array();
+}
+
+DOMErrorMonitor.prototype.handleError = function(err) {
+ errorMonitor.allErrors[errorMonitor.allErrors.length] = new DOMErrorImpl(err);
+}
+
+DOMErrorMonitor.prototype.assertLowerSeverity = function(id, severity) {
+ var i;
+ for (i = 0; i < this.allErrors.length; i++) {
+ if (this.allErrors[i].severity >= severity) {
+ assertEquals(id, severity - 1, this.allErrors[i].severity);
+ }
+ }
+}
+
+function UserDataNotification(operation, key, data, src, dst) {
+ this.operation = operation;
+ this.key = key;
+ this.data = data;
+ this.src = src;
+ this.dst = dst;
+}
+
+function UserDataMonitor() {
+ this.allNotifications = new Array();
+}
+
+UserDataMonitor.prototype.handle = function(operation, key, data, src, dst) {
+ userDataMonitor.allNotifications[userDataMonitor.allNotifications.length] =
+ new UserDataNotification(operation, key, data, src, dst);
+}
+
+
+
+function HTMLBuilder() {
+ this.contentType = "text/html";
+ this.supportedContentTypes = [ "text/html" ];
+
+ this.supportsAsyncChange = false;
+ this.async = false;
+ this.fixedAttributeNames = [
+ "validating", "expandEntityReferences", "coalescing",
+ "signed", "hasNullString", "ignoringElementContentWhitespace", "namespaceAware", "ignoringComments", "schemaValidating"];
+
+ this.fixedAttributeValues = [false, true, false, true, true , false, false, false, false ];
+ this.configurableAttributeNames = [ ];
+ this.configurableAttributeValues = [ ];
+ this.initializationError = null;
+ this.initializationFatalError = null;
+ this.skipIncompatibleTests = true;
+ this.documentURLs = new Array();
+ this.documentVarnames = new Array();
+}
+
+HTMLBuilder.prototype.hasFeature = function(feature, version) {
+ return document.implementation.hasFeature(feature, version);
+}
+
+HTMLBuilder.prototype.getImplementation = function() {
+ return document.implementation;
+}
+
+HTMLBuilder.prototype.preload = function(frame, varname, url) {
+ var i;
+ this.documentVarnames[this.documentVarnames.length] = varname;
+ this.documentURLs[this.documentURLs.length] = url;
+ if (this.documentURLs.length > 1) {
+ //
+ // if all the urls are not the same
+ //
+ for (i = 1; i < this.documentURLs.length; i++) {
+ if (this.documentURLs[i] != this.documentURLs[0]) {
+ throw "Tests with multiple loads of different documents are not currently supported";
+ }
+ }
+ }
+ return 1;
+}
+
+HTMLBuilder.prototype.cloneNode = function(srcNode, doc) {
+ var clone = null;
+ switch(srcNode.nodeType) {
+ //
+ // element
+ case 1:
+ clone = doc.createElement(srcNode.nodeName.toLowerCase());
+ var attrs = srcNode.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+ var srcChild = srcNode.firstChild;
+ while(srcChild != null) {
+ var cloneChild = this.cloneNode(srcChild, doc);
+ if (cloneChild != null) {
+ clone.appendChild(cloneChild);
+ }
+ srcChild = srcChild.nextSibling;
+ }
+ break;
+
+ case 3:
+ clone = doc.createTextNode(srcNode.nodeValue);
+ break;
+
+ case 4:
+ clone = doc.createCDATASection(srcNode.nodeValue);
+ break;
+
+ case 7:
+ clone = doc.createProcessingInstruction(srcNode.nodeValue);
+ break;
+
+ case 8:
+ clone = doc.createComment(srcNode.nodeValue);
+ break;
+ }
+ return clone;
+
+}
+
+HTMLBuilder.prototype.load = function(frame, varname, url) {
+ if (this.documentVarnames[0] == varname) {
+ return document;
+ }
+ //
+ //
+ // not a perfect way to do this
+ // Document.cloneNode is implementation dependent but exists in L1
+ // and implemented in IE. The alternative brute force copy
+ // only works in L2 or higher implementations and can't copy
+ // entity and notation definitions, etc.
+ var clone = null;
+ try {
+ clone = document.cloneNode(true);
+ } catch(ex) {
+ }
+ if (clone == null) {
+ clone = document.implementation.createDocument(
+ document.documentElement.namespaceURI,
+ document.documentElement.nodeName,
+ null);
+ //
+ // Work-around since
+ // Safari does not create document element
+ // create document.
+ if (clone.documentElement == null) {
+ clone.appendChild(clone.createElement(document.documentElement.nodeName));
+ }
+ var attrs = document.documentElement.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.documentElement.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+
+ var srcNode = document.firstChild;
+ while(srcNode != null && srcNode.nodeType != 1) {
+ if (srcNode.nodeType != 10) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.insertBefore(cloneNode, clone.documentElement);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.nextSibling;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.appendChild(cloneNode);
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.firstChild;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ if (cloneNode != null) {
+ clone.documentElement.appendChild(cloneNode);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ }
+ return clone;
+}
+
+HTMLBuilder.prototype.getImplementationAttribute = function(attr) {
+ for (var i = 0; i < this.fixedAttributeNames.length; i++) {
+ if (this.fixedAttributeNames[i] == attr) {
+ return this.fixedAttributeValues[i];
+ }
+ }
+ throw "Unrecognized implementation attribute: " + attr;
+}
+
+
+HTMLBuilder.prototype.setImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ if (supported != value) {
+ this.initializationError = "HTML loader does not support " + attribute + "=" + value;
+ }
+}
+
+HTMLBuilder.prototype.canSetImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ return (supported == value);
+}
+
+
+
+
+function createConfiguredBuilder() {
+ return new HTMLBuilder();
+}
+
+function catchInitializationError(buildr, ex) {
+ buildr.initializationError = ex;
+ buildr.initializationFatalError = ex;
+}
+
+function toLowerArray(src) {
+ var newArray = new Array();
+ var i;
+ for (i = 0; i < src.length; i++) {
+ newArray[i] = src[i].toLowerCase();
+ }
+ return newArray;
+}
+
+
+function checkFeature(feature, version)
+{
+ if (!builder.hasFeature(feature, version))
+ {
+ //
+ // don't throw exception so that users can select to ignore the precondition
+ //
+ builder.initializationError = "builder does not support feature " + feature + " version " + version;
+ }
+}
+
+function setResult(resultType, message) {
+ var testName = getTargetURI();
+ document.open();
+ document.writeln("<html><head>");
+ document.writeln("<meta HTTP-EQUIV='Content-Type' CONTENT='text/html; CHARSET=utf-8'>");
+ document.write("<title>");
+ document.write(testName + ":" + resultType);
+ document.write("<\/title><\/head><body><table width='100%' border='1' style='color:");
+ if (resultType == null) {
+ document.writeln("green'><tr><td>Test:<\/td><td>" + testName + "<\/td><\/tr><tr><td>Status:<\/td><td>Success<\/td><\/tr>");
+ } else {
+ if (resultType == "skip") {
+ document.writeln("blue'><tr><td>Test:<\/td><td>" + testName + "<\/td><\/tr><tr><td>Status:<\/td><td>Skipped<\/td><\/tr>");
+ } else {
+ document.writeln("red'><tr><td>Test:<\/td><td>" + testName + "<\/td><td><\/tr><tr><td>Status:<\/td><td>" + resultType + "<\/td><\/tr>");
+ }
+ }
+ if (message != null) {
+ document.writeln("<tr><td>Detail:<\/td><td>" + message + "<\/td><\/tr>");
+ }
+ document.write("<\/table><\/body><\/html>");
+ document.close();
+ if (parent != window) {
+ parent.setResult(testName, resultType, message);
+ }
+}
+
+function checkInitialization(buildr, testname) {
+ return buildr.initializationError;
+}
+
+function preload(docRef, varname, href) {
+ return builder.preload(docRef, varname, href);
+}
+
+
+function load(docRef, varname, href) {
+ return builder.load(docRef, varname, href);
+}
+
+
+function getImplementationAttribute(attr) {
+ return builder.getImplementationAttribute(attr);
+}
+
+
+function setImplementationAttribute(attribute, value) {
+ builder.setImplementationAttribute(attribute, value);
+}
+
+function createXPathEvaluator(doc) {
+ try {
+ return doc.getFeature("XPath", null);
+ }
+ catch(ex) {
+ }
+ return doc;
+}
+
+
+function getImplementation() {
+ return builder.getImplementation();
+}
+
+function assertEquals(id, expected, actual) {
+ var myActual;
+ if (expected != actual) {
+ myActual = actual;
+ if (actual == null) {
+ myActual = "null";
+ }
+ throw "failure:" + id + ": assertEquals failed, actual " + myActual + ", expected " + expected + ".";
+ }
+}
+
+function assertNull(id, actual) {
+ if (actual != null) {
+ throw "failure:" + id + ": assertNull failed, actual " + actual;
+ }
+}
+
+
+function assertTrue(id, actual) {
+ if (!actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+
+function assertFalse(id, actual) {
+ if (actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+function assertNotNull(id, actual) {
+ if (actual == null) {
+ throw "failure:" + id + ": assertNotNull failed";
+ }
+}
+
+function fail(id) {
+ throw "failure:" + id + ": fail";
+}
+
+
+
+function getSuffix(contentType) {
+ switch(contentType) {
+ case "text/xml":
+ return ".xml";
+
+ case "application/xhtml+xml":
+ return ".xhtml";
+
+ case "image/svg+xml":
+ return ".svg";
+
+ case "text/mathml":
+ return ".mml";
+ }
+ return ".html";
+}
+
+
+function getResourceURI(name, scheme, contentType) {
+ var base = document.documentURI;
+ if (base == null) {
+ base = "";
+ } else {
+ base = base.substring(0, base.lastIndexOf('/') + 1) + "files/";
+ }
+ return base + name + getSuffix(contentType);
+}
+
+
+
+function startTest() {
+ //
+ // invoke test setup
+ //
+ setUpPage();
+
+ try {
+ runTest();
+ if (builder.initializationError == null) {
+ setResult(null, null);
+ } else {
+ setResult("skip", builder.initializationError);
+ }
+ } catch(ex) {
+ if (typeof(ex.substring) != 'undefined' && ex.substring(0, 8) == "failure:") {
+ setResult("failure", ex.substring(8));
+ } else {
+ setResult("error", ex);
+ }
+ }
+}</script><script charset='UTF-8' type='text/javascript'>
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "base");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The href attribute specifies the base URI.
+
+ Retrieve the href attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65382887
+*/
+function HTMLBaseElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLBaseElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vhref;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "base");
+ nodeList = doc.getElementsByTagName("base");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vhref = testNode.href;
+
+ assertEquals("hrefLink","about:blank",vhref);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBaseElement01();
+}
+</script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>Some Text</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBaseElement02-expected.txt
new file mode 100644
index 0000000..ae3d1d9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseElement02.html b/LayoutTests/dom/html/level2/html/HTMLBaseElement02.html
new file mode 100644
index 0000000..e674f37
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseElement02.html
@@ -0,0 +1,828 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<BASE HREF="about:blank" TARGET="Frame1">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Base2</TITLE>
+<script type='text/javascript'>/*
+Copyright (c) 2001-2005 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+//
+// Webkit modification: 11-August-2005
+//
+if (window.layoutTestController)
+ layoutTestController.dumpAsText();
+//
+// End modification
+//
+
+
+ function assertSize(descr, expected, actual) {
+ var actualSize;
+ assertNotNull(descr, actual);
+ actualSize = actual.length;
+ assertEquals(descr, expected, actualSize);
+ }
+
+ function assertEqualsAutoCase(context, descr, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if(context == "attribute") {
+ assertEquals(descr, expected.toLowerCase(), actual.toLowerCase());
+ } else {
+ assertEquals(descr, expected.toUpperCase(), actual);
+ }
+ } else {
+ assertEquals(descr, expected, actual);
+ }
+ }
+
+
+ function assertEqualsCollectionAutoCase(context, descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ if (expectedValue.toLowerCase() == actual[j].toLowerCase()) {
+ matches++;
+ }
+ } else {
+ if (expectedValue.toUpperCase() == actual[j]) {
+ matches++;
+ }
+ }
+ } else {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+ function assertEqualsCollection(descr, expected, actual) {
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ //
+ // if there length is the same, then every entry in the expected list
+ // must appear once and only once in the actual list
+ var expectedLen = expected.length;
+ var expectedValue;
+ var actualLen = actual.length;
+ var i;
+ var j;
+ var matches;
+ for(i = 0; i < expectedLen; i++) {
+ matches = 0;
+ expectedValue = expected[i];
+ for(j = 0; j < actualLen; j++) {
+ if(expectedValue == actual[j]) {
+ matches++;
+ }
+ }
+ if(matches == 0) {
+ assert(descr + ": No match found for " + expectedValue,false);
+ }
+ if(matches > 1) {
+ assert(descr + ": Multiple matches found for " + expectedValue, false);
+ }
+ }
+ }
+
+
+ function assertEqualsListAutoCase(context, descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ assertEqualsAutoCase(context, descr, expected[i], actual[i]);
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+
+ function assertEqualsList(descr, expected, actual) {
+ var minLength = expected.length;
+ if (actual.length < minLength) {
+ minLength = actual.length;
+ }
+ //
+ for(var i = 0; i < minLength; i++) {
+ if(expected[i] != actual[i]) {
+ assertEquals(descr, expected[i], actual[i]);
+ }
+ }
+ //
+ // if they aren't the same size, they aren't equal
+ assertEquals(descr, expected.length, actual.length);
+ }
+
+ function assertInstanceOf(descr, type, obj) {
+ if(type == "Attr") {
+ assertEquals(descr,2,obj.nodeType);
+ var specd = obj.specified;
+ }
+ }
+
+ function assertSame(descr, expected, actual) {
+ if(expected != actual) {
+ assertEquals(descr, expected.nodeType, actual.nodeType);
+ assertEquals(descr, expected.nodeValue, actual.nodeValue);
+ }
+ }
+
+ function assertURIEquals(assertID, scheme, path, host, file, name, query, fragment, isAbsolute, actual) {
+ //
+ // URI must be non-null
+ assertNotNull(assertID, actual);
+
+ var uri = actual;
+
+ var lastPound = actual.lastIndexOf("#");
+ var actualFragment = "";
+ if(lastPound != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastPound);
+ actualFragment = actual.substring(lastPound+1);
+ }
+ if(fragment != null) assertEquals(assertID,fragment, actualFragment);
+
+ var lastQuestion = uri.lastIndexOf("?");
+ var actualQuery = "";
+ if(lastQuestion != -1) {
+ //
+ // substring before pound
+ //
+ uri = actual.substring(0,lastQuestion);
+ actualQuery = actual.substring(lastQuestion+1);
+ }
+ if(query != null) assertEquals(assertID, query, actualQuery);
+
+ var firstColon = uri.indexOf(":");
+ var firstSlash = uri.indexOf("/");
+ var actualPath = uri;
+ var actualScheme = "";
+ if(firstColon != -1 && firstColon < firstSlash) {
+ actualScheme = uri.substring(0,firstColon);
+ actualPath = uri.substring(firstColon + 1);
+ }
+
+ if(scheme != null) {
+ assertEquals(assertID, scheme, actualScheme);
+ }
+
+ if(path != null) {
+ assertEquals(assertID, path, actualPath);
+ }
+
+ if(host != null) {
+ var actualHost = "";
+ if(actualPath.substring(0,2) == "//") {
+ var termSlash = actualPath.substring(2).indexOf("/") + 2;
+ actualHost = actualPath.substring(0,termSlash);
+ }
+ assertEquals(assertID, host, actualHost);
+ }
+
+ if(file != null || name != null) {
+ var actualFile = actualPath;
+ var finalSlash = actualPath.lastIndexOf("/");
+ if(finalSlash != -1) {
+ actualFile = actualPath.substring(finalSlash+1);
+ }
+ if (file != null) {
+ assertEquals(assertID, file, actualFile);
+ }
+ if (name != null) {
+ var actualName = actualFile;
+ var finalDot = actualFile.lastIndexOf(".");
+ if (finalDot != -1) {
+ actualName = actualName.substring(0, finalDot);
+ }
+ assertEquals(assertID, name, actualName);
+ }
+ }
+
+ if(isAbsolute != null) {
+ assertEquals(assertID, isAbsolute, actualPath.substring(0,1) == "/");
+ }
+ }
+
+
+// size() used by assertSize element
+function size(collection)
+{
+ return collection.length;
+}
+
+function same(expected, actual)
+{
+ return expected === actual;
+}
+
+function equalsAutoCase(context, expected, actual) {
+ if (builder.contentType == "text/html") {
+ if (context == "attribute") {
+ return expected.toLowerCase() == actual;
+ }
+ return expected.toUpperCase() == actual;
+ }
+ return expected == actual;
+}
+
+function createTempURI(scheme) {
+ if (scheme == "http") {
+ return "http://localhost:8080/webdav/tmp" + Math.floor(Math.random() * 100000) + ".xml";
+ }
+ return "file:///tmp/domts" + Math.floor(Math.random() * 100000) + ".xml";
+}
+
+
+
+function EventMonitor() {
+ this.atEvents = new Array();
+ this.bubbledEvents = new Array();
+ this.capturedEvents = new Array();
+ this.allEvents = new Array();
+}
+
+EventMonitor.prototype.handleEvent = function(evt) {
+ switch(evt.eventPhase) {
+ case 1:
+ monitor.capturedEvents[monitor.capturedEvents.length] = evt;
+ break;
+
+ case 2:
+ monitor.atEvents[monitor.atEvents.length] = evt;
+ break;
+
+ case 3:
+ monitor.bubbledEvents[monitor.bubbledEvents.length] = evt;
+ break;
+ }
+ monitor.allEvents[monitor.allEvents.length] = evt;
+}
+
+function DOMErrorImpl(err) {
+ this.severity = err.severity;
+ this.message = err.message;
+ this.type = err.type;
+ this.relatedException = err.relatedException;
+ this.relatedData = err.relatedData;
+ this.location = err.location;
+}
+
+
+
+function DOMErrorMonitor() {
+ this.allErrors = new Array();
+}
+
+DOMErrorMonitor.prototype.handleError = function(err) {
+ errorMonitor.allErrors[errorMonitor.allErrors.length] = new DOMErrorImpl(err);
+}
+
+DOMErrorMonitor.prototype.assertLowerSeverity = function(id, severity) {
+ var i;
+ for (i = 0; i < this.allErrors.length; i++) {
+ if (this.allErrors[i].severity >= severity) {
+ assertEquals(id, severity - 1, this.allErrors[i].severity);
+ }
+ }
+}
+
+function UserDataNotification(operation, key, data, src, dst) {
+ this.operation = operation;
+ this.key = key;
+ this.data = data;
+ this.src = src;
+ this.dst = dst;
+}
+
+function UserDataMonitor() {
+ this.allNotifications = new Array();
+}
+
+UserDataMonitor.prototype.handle = function(operation, key, data, src, dst) {
+ userDataMonitor.allNotifications[userDataMonitor.allNotifications.length] =
+ new UserDataNotification(operation, key, data, src, dst);
+}
+
+
+
+function HTMLBuilder() {
+ this.contentType = "text/html";
+ this.supportedContentTypes = [ "text/html" ];
+
+ this.supportsAsyncChange = false;
+ this.async = false;
+ this.fixedAttributeNames = [
+ "validating", "expandEntityReferences", "coalescing",
+ "signed", "hasNullString", "ignoringElementContentWhitespace", "namespaceAware", "ignoringComments", "schemaValidating"];
+
+ this.fixedAttributeValues = [false, true, false, true, true , false, false, false, false ];
+ this.configurableAttributeNames = [ ];
+ this.configurableAttributeValues = [ ];
+ this.initializationError = null;
+ this.initializationFatalError = null;
+ this.skipIncompatibleTests = true;
+ this.documentURLs = new Array();
+ this.documentVarnames = new Array();
+}
+
+HTMLBuilder.prototype.hasFeature = function(feature, version) {
+ return document.implementation.hasFeature(feature, version);
+}
+
+HTMLBuilder.prototype.getImplementation = function() {
+ return document.implementation;
+}
+
+HTMLBuilder.prototype.preload = function(frame, varname, url) {
+ var i;
+ this.documentVarnames[this.documentVarnames.length] = varname;
+ this.documentURLs[this.documentURLs.length] = url;
+ if (this.documentURLs.length > 1) {
+ //
+ // if all the urls are not the same
+ //
+ for (i = 1; i < this.documentURLs.length; i++) {
+ if (this.documentURLs[i] != this.documentURLs[0]) {
+ throw "Tests with multiple loads of different documents are not currently supported";
+ }
+ }
+ }
+ return 1;
+}
+
+HTMLBuilder.prototype.cloneNode = function(srcNode, doc) {
+ var clone = null;
+ switch(srcNode.nodeType) {
+ //
+ // element
+ case 1:
+ clone = doc.createElement(srcNode.nodeName.toLowerCase());
+ var attrs = srcNode.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+ var srcChild = srcNode.firstChild;
+ while(srcChild != null) {
+ var cloneChild = this.cloneNode(srcChild, doc);
+ if (cloneChild != null) {
+ clone.appendChild(cloneChild);
+ }
+ srcChild = srcChild.nextSibling;
+ }
+ break;
+
+ case 3:
+ clone = doc.createTextNode(srcNode.nodeValue);
+ break;
+
+ case 4:
+ clone = doc.createCDATASection(srcNode.nodeValue);
+ break;
+
+ case 7:
+ clone = doc.createProcessingInstruction(srcNode.nodeValue);
+ break;
+
+ case 8:
+ clone = doc.createComment(srcNode.nodeValue);
+ break;
+ }
+ return clone;
+
+}
+
+HTMLBuilder.prototype.load = function(frame, varname, url) {
+ if (this.documentVarnames[0] == varname) {
+ return document;
+ }
+ //
+ //
+ // not a perfect way to do this
+ // Document.cloneNode is implementation dependent but exists in L1
+ // and implemented in IE. The alternative brute force copy
+ // only works in L2 or higher implementations and can't copy
+ // entity and notation definitions, etc.
+ var clone = null;
+ try {
+ clone = document.cloneNode(true);
+ } catch(ex) {
+ }
+ if (clone == null) {
+ clone = document.implementation.createDocument(
+ document.documentElement.namespaceURI,
+ document.documentElement.nodeName,
+ null);
+ //
+ // Work-around since
+ // Safari does not create document element
+ // create document.
+ if (clone.documentElement == null) {
+ clone.appendChild(clone.createElement(document.documentElement.nodeName));
+ }
+ var attrs = document.documentElement.attributes;
+ for(var i = 0; i < attrs.length; i++) {
+ var srcAttr = attrs.item(i);
+ clone.documentElement.setAttribute(srcAttr.nodeName, srcAttr.nodeValue);
+ }
+
+ var srcNode = document.firstChild;
+ while(srcNode != null && srcNode.nodeType != 1) {
+ if (srcNode.nodeType != 10) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.insertBefore(cloneNode, clone.documentElement);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.nextSibling;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ clone.appendChild(cloneNode);
+ srcNode = srcNode.nextSibling;
+ }
+ srcNode = document.documentElement.firstChild;
+ while(srcNode != null) {
+ var cloneNode = this.cloneNode(srcNode, clone);
+ if (cloneNode != null) {
+ clone.documentElement.appendChild(cloneNode);
+ }
+ srcNode = srcNode.nextSibling;
+ }
+ }
+ return clone;
+}
+
+HTMLBuilder.prototype.getImplementationAttribute = function(attr) {
+ for (var i = 0; i < this.fixedAttributeNames.length; i++) {
+ if (this.fixedAttributeNames[i] == attr) {
+ return this.fixedAttributeValues[i];
+ }
+ }
+ throw "Unrecognized implementation attribute: " + attr;
+}
+
+
+HTMLBuilder.prototype.setImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ if (supported != value) {
+ this.initializationError = "HTML loader does not support " + attribute + "=" + value;
+ }
+}
+
+HTMLBuilder.prototype.canSetImplementationAttribute = function(attribute, value) {
+ var supported = this.getImplementationAttribute(attribute);
+ return (supported == value);
+}
+
+
+
+
+function createConfiguredBuilder() {
+ return new HTMLBuilder();
+}
+
+function catchInitializationError(buildr, ex) {
+ buildr.initializationError = ex;
+ buildr.initializationFatalError = ex;
+}
+
+function toLowerArray(src) {
+ var newArray = new Array();
+ var i;
+ for (i = 0; i < src.length; i++) {
+ newArray[i] = src[i].toLowerCase();
+ }
+ return newArray;
+}
+
+
+function checkFeature(feature, version)
+{
+ if (!builder.hasFeature(feature, version))
+ {
+ //
+ // don't throw exception so that users can select to ignore the precondition
+ //
+ builder.initializationError = "builder does not support feature " + feature + " version " + version;
+ }
+}
+
+function setResult(resultType, message) {
+ var testName = getTargetURI();
+ document.open();
+ document.writeln("<html><head>");
+ document.writeln("<meta HTTP-EQUIV='Content-Type' CONTENT='text/html; CHARSET=utf-8'>");
+ document.write("<title>");
+ document.write(testName + ":" + resultType);
+ document.write("<\/title><\/head><body><table width='100%' border='1' style='color:");
+ if (resultType == null) {
+ document.writeln("green'><tr><td>Test:<\/td><td>" + testName + "<\/td><\/tr><tr><td>Status:<\/td><td>Success<\/td><\/tr>");
+ } else {
+ if (resultType == "skip") {
+ document.writeln("blue'><tr><td>Test:<\/td><td>" + testName + "<\/td><\/tr><tr><td>Status:<\/td><td>Skipped<\/td><\/tr>");
+ } else {
+ document.writeln("red'><tr><td>Test:<\/td><td>" + testName + "<\/td><td><\/tr><tr><td>Status:<\/td><td>" + resultType + "<\/td><\/tr>");
+ }
+ }
+ if (message != null) {
+ document.writeln("<tr><td>Detail:<\/td><td>" + message + "<\/td><\/tr>");
+ }
+ document.write("<\/table><\/body><\/html>");
+ document.close();
+ if (parent != window) {
+ parent.setResult(testName, resultType, message);
+ }
+}
+
+function checkInitialization(buildr, testname) {
+ return buildr.initializationError;
+}
+
+function preload(docRef, varname, href) {
+ return builder.preload(docRef, varname, href);
+}
+
+
+function load(docRef, varname, href) {
+ return builder.load(docRef, varname, href);
+}
+
+
+function getImplementationAttribute(attr) {
+ return builder.getImplementationAttribute(attr);
+}
+
+
+function setImplementationAttribute(attribute, value) {
+ builder.setImplementationAttribute(attribute, value);
+}
+
+function createXPathEvaluator(doc) {
+ try {
+ return doc.getFeature("XPath", null);
+ }
+ catch(ex) {
+ }
+ return doc;
+}
+
+
+function getImplementation() {
+ return builder.getImplementation();
+}
+
+function assertEquals(id, expected, actual) {
+ var myActual;
+ if (expected != actual) {
+ myActual = actual;
+ if (actual == null) {
+ myActual = "null";
+ }
+ throw "failure:" + id + ": assertEquals failed, actual " + myActual + ", expected " + expected + ".";
+ }
+}
+
+function assertNull(id, actual) {
+ if (actual != null) {
+ throw "failure:" + id + ": assertNull failed, actual " + actual;
+ }
+}
+
+
+function assertTrue(id, actual) {
+ if (!actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+
+function assertFalse(id, actual) {
+ if (actual) {
+ throw "failure:" + id + ": assertTrue failed";
+ }
+}
+
+function assertNotNull(id, actual) {
+ if (actual == null) {
+ throw "failure:" + id + ": assertNotNull failed";
+ }
+}
+
+function fail(id) {
+ throw "failure:" + id + ": fail";
+}
+
+
+
+function getSuffix(contentType) {
+ switch(contentType) {
+ case "text/xml":
+ return ".xml";
+
+ case "application/xhtml+xml":
+ return ".xhtml";
+
+ case "image/svg+xml":
+ return ".svg";
+
+ case "text/mathml":
+ return ".mml";
+ }
+ return ".html";
+}
+
+
+function getResourceURI(name, scheme, contentType) {
+ var base = document.documentURI;
+ if (base == null) {
+ base = "";
+ } else {
+ base = base.substring(0, base.lastIndexOf('/') + 1) + "files/";
+ }
+ return base + name + getSuffix(contentType);
+}
+
+
+
+function startTest() {
+ //
+ // invoke test setup
+ //
+ setUpPage();
+
+ try {
+ runTest();
+ if (builder.initializationError == null) {
+ setResult(null, null);
+ } else {
+ setResult("skip", builder.initializationError);
+ }
+ } catch(ex) {
+ if (typeof(ex.substring) != 'undefined' && ex.substring(0, 8) == "failure:") {
+ setResult("failure", ex.substring(8));
+ } else {
+ setResult("error", ex);
+ }
+ }
+}</script><script charset='UTF-8' type='text/javascript'>
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "base2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The target attribute specifies the default target frame.
+
+ Retrieve the target attribute and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73844298
+*/
+function HTMLBaseElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLBaseElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vtarget;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "base2");
+ nodeList = doc.getElementsByTagName("base");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtarget = testNode.target;
+
+ assertEquals("targetLink","Frame1",vtarget);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBaseElement02();
+}
+</script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes">
+</FRAMESET>
+<FRAME>
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01-expected.txt
new file mode 100644
index 0000000..feacd76
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01.html b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01.html
new file mode 100644
index 0000000..ce048b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - BaseFont</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBaseFontElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BASEFONT COLOR="#000000" FACE="arial,helvitica" SIZE="4">
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01.js b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01.js
new file mode 100644
index 0000000..186e110
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "basefont");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The color attribute specifies the base font's color.
+
+ Retrieve the color attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302
+*/
+function HTMLBaseFontElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLBaseFontElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "basefont");
+ nodeList = doc.getElementsByTagName("basefont");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcolor = testNode.color;
+
+ assertEquals("colorLink","#000000",vcolor);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBaseFontElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02-expected.txt
new file mode 100644
index 0000000..dc6b8d9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02.html b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02.html
new file mode 100644
index 0000000..7da84c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - BaseFont</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBaseFontElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BASEFONT COLOR="#000000" FACE="arial,helvitica" SIZE="4">
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02.js b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02.js
new file mode 100644
index 0000000..a8aa314
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "basefont");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The face attribute specifies the base font's face identifier.
+
+ Retrieve the face attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88128969
+*/
+function HTMLBaseFontElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLBaseFontElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vface;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "basefont");
+ nodeList = doc.getElementsByTagName("basefont");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vface = testNode.face;
+
+ assertEquals("faceLink","arial,helvitica",vface);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBaseFontElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03-expected.txt
new file mode 100644
index 0000000..737a57f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03.html b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03.html
new file mode 100644
index 0000000..aa5d867
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - BaseFont</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBaseFontElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BASEFONT COLOR="#000000" FACE="arial,helvitica" SIZE="4">
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03.js b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03.js
new file mode 100644
index 0000000..b07e040
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBaseFontElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseFontElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "basefont");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The size attribute specifies the base font's size.
+
+ Retrieve the size attribute and examine it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-38930424
+*/
+function HTMLBaseFontElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLBaseFontElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vsize;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "basefont");
+ nodeList = doc.getElementsByTagName("basefont");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vsize = testNode.size;
+
+ assertEquals("sizeLink",4,vsize);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBaseFontElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement01-expected.txt
new file mode 100644
index 0000000..b6ec622
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement01.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement01.html
new file mode 100644
index 0000000..e9bfb88
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement01.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Body</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ALINK="#0000ff" BACKGROUND="./pix/back1.gif" BGCOLOR="#ffff00" LINK="#ff0000" TEXT="#000000" VLINK="#00ffff">
+<P>Hello, World</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement01.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement01.js
new file mode 100644
index 0000000..e7ad4e9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "body");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The aLink attribute specifies the color of active links.
+
+ Retrieve the aLink attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59424581
+*/
+function HTMLBodyElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valink;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "body");
+ nodeList = doc.getElementsByTagName("body");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valink = testNode.aLink;
+
+ assertEquals("aLinkLink","#0000ff",valink);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement02-expected.txt
new file mode 100644
index 0000000..06ebe6f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement02.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement02.html
new file mode 100644
index 0000000..9943e0c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement02.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Body</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ALINK="#0000ff" BACKGROUND="./pix/back1.gif" BGCOLOR="#ffff00" LINK="#ff0000" TEXT="#000000" VLINK="#00ffff">
+<P>Hello, World</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement02.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement02.js
new file mode 100644
index 0000000..ad6e17b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "body");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The background attribute specifies the URI fo the background texture
+ tile image.
+
+ Retrieve the background attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-37574810
+*/
+function HTMLBodyElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vbackground;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "body");
+ nodeList = doc.getElementsByTagName("body");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vbackground = testNode.background;
+
+ assertEquals("backgroundLink","./pix/back1.gif",vbackground);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement03-expected.txt
new file mode 100644
index 0000000..2d4d2de
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement03.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement03.html
new file mode 100644
index 0000000..f861ca6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement03.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Body</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ALINK="#0000ff" BACKGROUND="./pix/back1.gif" BGCOLOR="#ffff00" LINK="#ff0000" TEXT="#000000" VLINK="#00ffff">
+<P>Hello, World</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement03.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement03.js
new file mode 100644
index 0000000..e7e4f41
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "body");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The bgColor attribute specifies the document background color.
+
+ Retrieve the bgColor attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-24940084
+*/
+function HTMLBodyElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vbgcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "body");
+ nodeList = doc.getElementsByTagName("body");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vbgcolor = testNode.bgColor;
+
+ assertEquals("bgColorLink","#ffff00",vbgcolor);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement04-expected.txt
new file mode 100644
index 0000000..fe135d4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement04.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement04.html
new file mode 100644
index 0000000..068e2e8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement04.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Body</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ALINK="#0000ff" BACKGROUND="./pix/back1.gif" BGCOLOR="#ffff00" LINK="#ff0000" TEXT="#000000" VLINK="#00ffff">
+<P>Hello, World</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement04.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement04.js
new file mode 100644
index 0000000..32b9813
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "body");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The link attribute specifies the color of links that are not active
+ and unvisited.
+
+ Retrieve the link attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7662206
+*/
+function HTMLBodyElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vlink;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "body");
+ nodeList = doc.getElementsByTagName("body");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlink = testNode.link;
+
+ assertEquals("linkLink","#ff0000",vlink);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement05-expected.txt
new file mode 100644
index 0000000..8da6677
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement05.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement05.html
new file mode 100644
index 0000000..c6f8363
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement05.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Body</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ALINK="#0000ff" BACKGROUND="./pix/back1.gif" BGCOLOR="#ffff00" LINK="#ff0000" TEXT="#000000" VLINK="#00ffff">
+<P>Hello, World</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement05.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement05.js
new file mode 100644
index 0000000..5a0adf1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "body");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The text attribute specifies the document text color.
+
+ Retrieve the text attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73714763
+*/
+function HTMLBodyElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vtext;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "body");
+ nodeList = doc.getElementsByTagName("body");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtext = testNode.text;
+
+ assertEquals("textLink","#000000",vtext);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement06-expected.txt
new file mode 100644
index 0000000..fd2552a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement06.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement06.html
new file mode 100644
index 0000000..0838fed
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement06.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Body</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ALINK="#0000ff" BACKGROUND="./pix/back1.gif" BGCOLOR="#ffff00" LINK="#ff0000" TEXT="#000000" VLINK="#00ffff">
+<P>Hello, World</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement06.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement06.js
new file mode 100644
index 0000000..e71c47b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement06.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "body");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vLink attribute specifies the color of links that have been
+ visited by the user.
+
+ Retrieve the vLink attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83224305
+*/
+function HTMLBodyElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vvlink;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "body");
+ nodeList = doc.getElementsByTagName("body");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvlink = testNode.vLink;
+
+ assertEquals("vLinkLink","#00ffff",vvlink);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement07-expected.txt
new file mode 100644
index 0000000..61ad40f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement07.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement07.html
new file mode 100644
index 0000000..86f1b2a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement07.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement07.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement07.js
new file mode 100644
index 0000000..d583c23
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement07.js
@@ -0,0 +1,110 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("hTmL", null) returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039
+*/
+function HTMLBodyElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement07") != null) return;
+ var doc;
+ var body;
+ var state;
+ var version = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ body = doc.body;
+
+ state = body.isSupported("hTmL",version);
+ assertTrue("isSupportedHTML",state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement08-expected.txt
new file mode 100644
index 0000000..a783ddd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement08.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement08.html
new file mode 100644
index 0000000..c682620
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement08.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement08.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement08.js
new file mode 100644
index 0000000..10cc9f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement08.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("hTmL", "2.0") returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039
+*/
+function HTMLBodyElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement08") != null) return;
+ var doc;
+ var body;
+ var state;
+ var version = "2.0";
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ body = doc.body;
+
+ state = body.isSupported("hTmL",version);
+ assertTrue("isSupportedHTML",state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement09-expected.txt
new file mode 100644
index 0000000..5314037
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement09.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement09.html
new file mode 100644
index 0000000..ca62b5b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement09.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement09.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement09.js
new file mode 100644
index 0000000..4877d1a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement09.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("xhTmL", null) returns true if hasFeature("XML", null) is true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039
+*/
+function HTMLBodyElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement09") != null) return;
+ var doc;
+ var body;
+ var state;
+ var hasXML;
+ var version = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ body = doc.body;
+
+ hasXML = body.isSupported("XML",version);
+ state = body.isSupported("xhTmL",version);
+ assertEquals("isSupportedXHTML",hasXML,state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement10-expected.txt
new file mode 100644
index 0000000..79765a1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement10.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement10.html
new file mode 100644
index 0000000..1d883a4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement10.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement10.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement10.js
new file mode 100644
index 0000000..41c1e2e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement10.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("xhTmL", "2.0") returns true if hasFeature("XML", "2.0") is true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039
+*/
+function HTMLBodyElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement10") != null) return;
+ var doc;
+ var body;
+ var state;
+ var hasXML;
+ var version = "2.0";
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ body = doc.body;
+
+ hasXML = body.isSupported("XML",version);
+ state = body.isSupported("xhTmL",version);
+ assertEquals("isSupportedXHTML",hasXML,state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement11-expected.txt
new file mode 100644
index 0000000..8d7414d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement11.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement11.html
new file mode 100644
index 0000000..bfa8fce
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement11.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement11.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement11.js
new file mode 100644
index 0000000..8617f34
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement11.js
@@ -0,0 +1,110 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("cOrE", null) returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039
+*/
+function HTMLBodyElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement11") != null) return;
+ var doc;
+ var body;
+ var state;
+ var version = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ body = doc.body;
+
+ state = body.isSupported("cOrE",version);
+ assertTrue("isSupportedCore",state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLBodyElement12-expected.txt
new file mode 100644
index 0000000..6611d86
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement12.html b/LayoutTests/dom/html/level2/html/HTMLBodyElement12.html
new file mode 100644
index 0000000..335fd23
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement12.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLBodyElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLBodyElement12.js b/LayoutTests/dom/html/level2/html/HTMLBodyElement12.js
new file mode 100644
index 0000000..005920b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLBodyElement12.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("cOrE", "2.0") returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-62018039
+*/
+function HTMLBodyElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLBodyElement12") != null) return;
+ var doc;
+ var body;
+ var state;
+ var version = "2.0";
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ body = doc.body;
+
+ state = body.isSupported("cOrE",version);
+ assertTrue("isSupportedCore",state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLBodyElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLButtonElement01-expected.txt
new file mode 100644
index 0000000..118ca55
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement01.html b/LayoutTests/dom/html/level2/html/HTMLButtonElement01.html
new file mode 100644
index 0000000..eb1bc4f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement01.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLButtonElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement01.js b/LayoutTests/dom/html/level2/html/HTMLButtonElement01.js
new file mode 100644
index 0000000..7fdd39a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement01.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493
+*/
+function HTMLButtonElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLButtonElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var fNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("formLink","form2",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLButtonElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLButtonElement02-expected.txt
new file mode 100644
index 0000000..ef20a4e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement02.html b/LayoutTests/dom/html/level2/html/HTMLButtonElement02.html
new file mode 100644
index 0000000..2422f29
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement02.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLButtonElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement02.js b/LayoutTests/dom/html/level2/html/HTMLButtonElement02.js
new file mode 100644
index 0000000..f767841
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493
+*/
+function HTMLButtonElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLButtonElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLButtonElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLButtonElement03-expected.txt
new file mode 100644
index 0000000..0bfd502
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement03.html b/LayoutTests/dom/html/level2/html/HTMLButtonElement03.html
new file mode 100644
index 0000000..82680b7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement03.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLButtonElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement03.js b/LayoutTests/dom/html/level2/html/HTMLButtonElement03.js
new file mode 100644
index 0000000..5777ffb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The accessKey attribute returns a single character access key to
+ give access to the form control.
+
+ Retrieve the accessKey attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73169431
+*/
+function HTMLButtonElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLButtonElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("accessKeyLink","f",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ HTMLButtonElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLButtonElement04-expected.txt
new file mode 100644
index 0000000..e6ca854
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement04.html b/LayoutTests/dom/html/level2/html/HTMLButtonElement04.html
new file mode 100644
index 0000000..977025e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement04.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLButtonElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement04.js b/LayoutTests/dom/html/level2/html/HTMLButtonElement04.js
new file mode 100644
index 0000000..928eb98
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The disabled attribute specifies whether the control is unavailable
+ in this context.
+
+ Retrieve the disabled attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92757155
+*/
+function HTMLButtonElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLButtonElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vdisabled = testNode.disabled;
+
+ assertTrue("disabledLink",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ HTMLButtonElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLButtonElement05-expected.txt
new file mode 100644
index 0000000..a3f3263
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement05.html b/LayoutTests/dom/html/level2/html/HTMLButtonElement05.html
new file mode 100644
index 0000000..08774e9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement05.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLButtonElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement05.js b/LayoutTests/dom/html/level2/html/HTMLButtonElement05.js
new file mode 100644
index 0000000..1801f37
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement05.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute is the form control or object name when submitted
+ with a form.
+
+ Retrieve the name attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11029910
+*/
+function HTMLButtonElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLButtonElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","disabledButton",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLButtonElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLButtonElement06-expected.txt
new file mode 100644
index 0000000..63e6cc5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement06.html b/LayoutTests/dom/html/level2/html/HTMLButtonElement06.html
new file mode 100644
index 0000000..bf96eec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement06.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLButtonElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement06.js b/LayoutTests/dom/html/level2/html/HTMLButtonElement06.js
new file mode 100644
index 0000000..4ea401a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement06.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tabIndex attribute specifies an index that represents the element's
+ position in the tabbing order.
+
+ Retrieve the tabIndex attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39190908
+*/
+function HTMLButtonElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLButtonElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",20,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLButtonElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLButtonElement07-expected.txt
new file mode 100644
index 0000000..b5a01fa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement07.html b/LayoutTests/dom/html/level2/html/HTMLButtonElement07.html
new file mode 100644
index 0000000..2780334
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement07.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLButtonElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement07.js b/LayoutTests/dom/html/level2/html/HTMLButtonElement07.js
new file mode 100644
index 0000000..0ee9e85
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement07.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the type of button.
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27430092
+*/
+function HTMLButtonElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLButtonElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","reset",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLButtonElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLButtonElement08-expected.txt
new file mode 100644
index 0000000..cb5dcfe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement08.html b/LayoutTests/dom/html/level2/html/HTMLButtonElement08.html
new file mode 100644
index 0000000..0a5357c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement08.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLButtonElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLButtonElement08.js b/LayoutTests/dom/html/level2/html/HTMLButtonElement08.js
new file mode 100644
index 0000000..3b4eba3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLButtonElement08.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The value attribute specifies the current control value.
+
+ Retrieve the value attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72856782
+*/
+function HTMLButtonElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLButtonElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vvalue = testNode.value;
+
+ assertEquals("valueLink","Reset Disabled Button",vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLButtonElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection01-expected.txt
new file mode 100644
index 0000000..cc2fb1b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection01.html b/LayoutTests/dom/html/level2/html/HTMLCollection01.html
new file mode 100644
index 0000000..28a91fa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection01.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection01.js b/LayoutTests/dom/html/level2/html/HTMLCollection01.js
new file mode 100644
index 0000000..2e76edc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection01.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. The item located at ordinal index 0 is further
+ retrieved and its "rowIndex" attribute is examined.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535
+*/
+function HTMLCollection01() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection01") != null) return;
+ var nodeList;
+ var testNode;
+ var rowNode;
+ var rowsnodeList;
+ var vrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ rowNode = rowsnodeList.item(0);
+ vrowindex = rowNode.rowIndex;
+
+ assertEquals("rowIndexLink",0,vrowindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection02-expected.txt
new file mode 100644
index 0000000..ae50730
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection02.html b/LayoutTests/dom/html/level2/html/HTMLCollection02.html
new file mode 100644
index 0000000..d41d7cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection02.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection02.js b/LayoutTests/dom/html/level2/html/HTMLCollection02.js
new file mode 100644
index 0000000..f8b99e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection02.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The first SELECT element is further retrieved
+ using the elements name attribute.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479
+*/
+function HTMLCollection02() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection02") != null) return;
+ var nodeList;
+ var testNode;
+ var formNode;
+ var formsnodeList;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ formsnodeList = testNode.elements;
+
+ formNode = formsnodeList.namedItem("select1");
+ vname = formNode.nodeName;
+
+ assertEqualsAutoCase("element", "nameIndexLink","SELECT",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection03-expected.txt
new file mode 100644
index 0000000..2de175c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection03.html b/LayoutTests/dom/html/level2/html/HTMLCollection03.html
new file mode 100644
index 0000000..b43d53d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection03.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection03.js b/LayoutTests/dom/html/level2/html/HTMLCollection03.js
new file mode 100644
index 0000000..8c22195
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection03.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test id attribute).
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the "element" attribute. The first SELECT element is further retrieved
+ using the elements id.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976
+*/
+function HTMLCollection03() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection03") != null) return;
+ var nodeList;
+ var testNode;
+ var formNode;
+ var formsnodeList;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ formsnodeList = testNode.elements;
+
+ formNode = formsnodeList.namedItem("selectId");
+ vname = formNode.nodeName;
+
+ assertEqualsAutoCase("element", "nameIndexLink","select",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection04-expected.txt
new file mode 100644
index 0000000..63d2b9a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection04.html b/LayoutTests/dom/html/level2/html/HTMLCollection04.html
new file mode 100644
index 0000000..3a9e88f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection04.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection04.js b/LayoutTests/dom/html/level2/html/HTMLCollection04.js
new file mode 100644
index 0000000..83dec64
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection04.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ HTMLCollections are live, they are automatically updated when the
+ underlying document is changed.
+
+ Create a HTMLCollection object by invoking the rows attribute of the
+ first TABLE element and examine its length, then add a new row and
+ re-examine the length.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551
+*/
+function HTMLCollection04() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection04") != null) return;
+ var nodeList;
+ var testNode;
+ var rowLength1;
+ var rowLength2;
+ var rowsnodeList;
+ var newRow;
+ var vrowindex;
+ var doc;
+ var result = new Array();
+
+ expectedResult = new Array();
+ expectedResult[0] = 4;
+ expectedResult[1] = 5;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ rowLength1 = rowsnodeList.length;
+
+ result[result.length] = rowLength1;
+newRow = testNode.insertRow(4);
+ rowLength2 = rowsnodeList.length;
+
+ result[result.length] = rowLength2;
+assertEqualsList("rowIndexLink",expectedResult,result);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection05-expected.txt
new file mode 100644
index 0000000..075ce48
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection05.html b/LayoutTests/dom/html/level2/html/HTMLCollection05.html
new file mode 100644
index 0000000..cef4b9e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection05.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection05.js b/LayoutTests/dom/html/level2/html/HTMLCollection05.js
new file mode 100644
index 0000000..5a872de
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection05.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The length attribute specifies the length or size of the list.
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Retrieve the length attribute of the HTMLCollection
+ object.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551
+*/
+function HTMLCollection05() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection05") != null) return;
+ var nodeList;
+ var testNode;
+ var rowsnodeList;
+ var rowLength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ rowLength = rowsnodeList.length;
+
+ assertEquals("rowIndexLink",4,rowLength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection06-expected.txt
new file mode 100644
index 0000000..a203838
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection06.html b/LayoutTests/dom/html/level2/html/HTMLCollection06.html
new file mode 100644
index 0000000..708e3c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection06.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection06.js b/LayoutTests/dom/html/level2/html/HTMLCollection06.js
new file mode 100644
index 0000000..c5fc10c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection06.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An item(index) method retrieves an item specified by ordinal index
+ (Test for index=0).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. The item located at ordinal index 0 is further
+ retrieved and its "rowIndex" attribute is examined.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6156016
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535
+*/
+function HTMLCollection06() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection06") != null) return;
+ var nodeList;
+ var testNode;
+ var rowNode;
+ var rowsnodeList;
+ var vrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ rowNode = rowsnodeList.item(0);
+ vrowindex = rowNode.rowIndex;
+
+ assertEquals("rowIndexLink",0,vrowindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection07-expected.txt
new file mode 100644
index 0000000..8674304
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection07.html b/LayoutTests/dom/html/level2/html/HTMLCollection07.html
new file mode 100644
index 0000000..e4e4c6f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection07.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection07.js b/LayoutTests/dom/html/level2/html/HTMLCollection07.js
new file mode 100644
index 0000000..c10f1fd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection07.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An item(index) method retrieves an item specified by ordinal index
+ (Test for index=3).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. The item located at ordinal index 3 is further
+ retrieved and its "rowIndex" attribute is examined.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535
+*/
+function HTMLCollection07() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection07") != null) return;
+ var nodeList;
+ var testNode;
+ var rowNode;
+ var rowsnodeList;
+ var vrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ rowNode = rowsnodeList.item(3);
+ vrowindex = rowNode.rowIndex;
+
+ assertEquals("rowIndexLink",3,vrowindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection08-expected.txt
new file mode 100644
index 0000000..6a729b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection08.html b/LayoutTests/dom/html/level2/html/HTMLCollection08.html
new file mode 100644
index 0000000..f82e015
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection08.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection08.js b/LayoutTests/dom/html/level2/html/HTMLCollection08.js
new file mode 100644
index 0000000..d8a8cb1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection08.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Nodes in a HTMLCollection object are numbered in tree order.
+ (Depth-first traversal order).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Access the item in the third ordinal index. The
+ resulting rowIndex attribute is examined and should be two.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535
+*/
+function HTMLCollection08() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection08") != null) return;
+ var nodeList;
+ var testNode;
+ var rowNode;
+ var rowsnodeList;
+ var vrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ rowNode = rowsnodeList.item(2);
+ vrowindex = rowNode.rowIndex;
+
+ assertEquals("rowIndexLink",2,vrowindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection09-expected.txt
new file mode 100644
index 0000000..90a9e67
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection09.html b/LayoutTests/dom/html/level2/html/HTMLCollection09.html
new file mode 100644
index 0000000..a82a4acd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection09.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection09.js b/LayoutTests/dom/html/level2/html/HTMLCollection09.js
new file mode 100644
index 0000000..0f8bc7c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection09.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The item(index) method returns null if the index is out of range.
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Invoke the item(index) method with an index
+ of 5. This index is out of range and should return null.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535
+*/
+function HTMLCollection09() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection09") != null) return;
+ var nodeList;
+ var testNode;
+ var rowNode;
+ var rowsnodeList;
+ var vrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ rowNode = rowsnodeList.item(5);
+ assertNull("rowIndexLink",rowNode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection10-expected.txt
new file mode 100644
index 0000000..6687761
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection10.html b/LayoutTests/dom/html/level2/html/HTMLCollection10.html
new file mode 100644
index 0000000..f81dbd1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection10.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection10.js b/LayoutTests/dom/html/level2/html/HTMLCollection10.js
new file mode 100644
index 0000000..40af3c6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection10.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The namedItem(name) method retrieves a node using a name. It first
+ searches for a node with a matching id attribute. If it doesn't find
+ one, it then searches for a Node with a matching name attribute, but only
+ on those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The first SELECT element is further retrieved
+ using the elements name attribute since the id attribute doesn't match.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976
+*/
+function HTMLCollection10() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection10") != null) return;
+ var nodeList;
+ var testNode;
+ var formNode;
+ var formsnodeList;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ formsnodeList = testNode.elements;
+
+ formNode = formsnodeList.namedItem("select1");
+ vname = formNode.nodeName;
+
+ assertEqualsAutoCase("element", "nameIndexLink","SELECT",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection11-expected.txt
new file mode 100644
index 0000000..336f683
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection11.html b/LayoutTests/dom/html/level2/html/HTMLCollection11.html
new file mode 100644
index 0000000..7ab2373
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection11.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection11.js b/LayoutTests/dom/html/level2/html/HTMLCollection11.js
new file mode 100644
index 0000000..59e40ff
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection11.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The namedItem(name) method retrieves a node using a name. It first
+ searches for a node with a matching id attribute. If it doesn't find
+ one, it then searches for a Node with a matching name attribute, but only
+ on those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The first SELECT element is further retrieved
+ using the elements id attribute.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479
+*/
+function HTMLCollection11() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection11") != null) return;
+ var nodeList;
+ var testNode;
+ var formNode;
+ var formsnodeList;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ formsnodeList = testNode.elements;
+
+ formNode = formsnodeList.namedItem("selectId");
+ vname = formNode.nodeName;
+
+ assertEqualsAutoCase("element", "nameIndexLink","select",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLCollection12-expected.txt
new file mode 100644
index 0000000..c2289dc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection12.html b/LayoutTests/dom/html/level2/html/HTMLCollection12.html
new file mode 100644
index 0000000..09f5076
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection12.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLCollection12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ID="table-1" BORDER="4" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all">
+<CAPTION>Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" COLSPAN="1" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLCollection12.js b/LayoutTests/dom/html/level2/html/HTMLCollection12.js
new file mode 100644
index 0000000..1a93919
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLCollection12.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "collection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The namedItem(name) method retrieves a node using a name. It first
+ searches for a node with a matching id attribute. If it doesn't find
+ one, it then searches for a Node with a matching name attribute, but only
+ on those elements that are allowed a name attribute. If there isn't
+ a matching node the method returns null.
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The method returns null since there is not a
+ match of the name or id attribute.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976
+*/
+function HTMLCollection12() {
+ var success;
+ if(checkInitialization(builder, "HTMLCollection12") != null) return;
+ var nodeList;
+ var testNode;
+ var formNode;
+ var formsnodeList;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "collection");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ formsnodeList = testNode.elements;
+
+ formNode = formsnodeList.namedItem("select9");
+ assertNull("nameIndexLink",formNode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLCollection12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01-expected.txt
new file mode 100644
index 0000000..6bdd1db
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDirectoryElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01.html b/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01.html
new file mode 100644
index 0000000..42479b1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Directory</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDirectoryElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<DIR COMPACT="compact">
+<LI>DIR item number 1.</LI>
+<LI>DIR item number 2.</LI>
+<LI>DIR item number 3.</LI>
+</DIR>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01.js b/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01.js
new file mode 100644
index 0000000..03ff03f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDirectoryElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDirectoryElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "directory");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The compact attribute specifies a boolean value on whether to display
+ the list more compactly.
+
+ Retrieve the compact attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75317739
+*/
+function HTMLDirectoryElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLDirectoryElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcompact;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "directory");
+ nodeList = doc.getElementsByTagName("dir");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcompact = testNode.compact;
+
+ assertTrue("compactLink",vcompact);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDirectoryElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDivElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDivElement01-expected.txt
new file mode 100644
index 0000000..37dfdc1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDivElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDivElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDivElement01.html b/LayoutTests/dom/html/level2/html/HTMLDivElement01.html
new file mode 100644
index 0000000..8a93861
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDivElement01.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DIV</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDivElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<DIV ALIGN="center">The DIV element is a generic block container. This text should be centered.</DIV>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDivElement01.js b/LayoutTests/dom/html/level2/html/HTMLDivElement01.js
new file mode 100644
index 0000000..ea3e11d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDivElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDivElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "div");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal text alignment.
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70908791
+*/
+function HTMLDivElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLDivElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "div");
+ nodeList = doc.getElementsByTagName("div");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDivElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDlistElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDlistElement01-expected.txt
new file mode 100644
index 0000000..0c9ddc6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDlistElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDlistElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDlistElement01.html b/LayoutTests/dom/html/level2/html/HTMLDlistElement01.html
new file mode 100644
index 0000000..4f6d226
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDlistElement01.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDlistElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<DL COMPACT="COMPACT">
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+<DD>1230 North Ave. Dallas, Texas 98551</DD>
+</DL>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDlistElement01.js b/LayoutTests/dom/html/level2/html/HTMLDlistElement01.js
new file mode 100644
index 0000000..3cee382
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDlistElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDlistElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "dl");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The compact attribute specifies a boolean value on whether to display
+ the list more compactly.
+
+ Retrieve the compact attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21738539
+*/
+function HTMLDlistElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLDlistElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcompact;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "dl");
+ nodeList = doc.getElementsByTagName("dl");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcompact = testNode.compact;
+
+ assertTrue("compactLink",vcompact);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDlistElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument01-expected.txt
new file mode 100644
index 0000000..ad0a0b0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument01.html b/LayoutTests/dom/html/level2/html/HTMLDocument01.html
new file mode 100644
index 0000000..f4c4e11
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument01.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument01.js b/LayoutTests/dom/html/level2/html/HTMLDocument01.js
new file mode 100644
index 0000000..8f44ba7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument01.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute is the specified title as a string.
+
+ Retrieve the title attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18446827
+*/
+function HTMLDocument01() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument01") != null) return;
+ var nodeList;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vtitle = doc.title;
+
+ assertEquals("titleLink","NIST DOM HTML Test - DOCUMENT",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument02-expected.txt
new file mode 100644
index 0000000..bd34fa8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument02.html b/LayoutTests/dom/html/level2/html/HTMLDocument02.html
new file mode 100644
index 0000000..a5c47eb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument02.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument02.js b/LayoutTests/dom/html/level2/html/HTMLDocument02.js
new file mode 100644
index 0000000..f037a06
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument02.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The referrer attribute returns the URI of the page that linked to this
+ page.
+
+ Retrieve the referrer attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95229140
+*/
+function HTMLDocument02() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument02") != null) return;
+ var nodeList;
+ var testNode;
+ var vreferrer;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vreferrer = doc.referrer;
+
+ assertEquals("referrerLink","",vreferrer);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument03-expected.txt
new file mode 100644
index 0000000..379e023
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument03.html b/LayoutTests/dom/html/level2/html/HTMLDocument03.html
new file mode 100644
index 0000000..e6d7f89
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument03.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument03.js b/LayoutTests/dom/html/level2/html/HTMLDocument03.js
new file mode 100644
index 0000000..980a859
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument03.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The domain attribute specifies the domain name of the server that served
+ the document, or null if the server cannot be identified by a domain name.
+
+ Retrieve the domain attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-2250147
+*/
+function HTMLDocument03() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument03") != null) return;
+ var nodeList;
+ var testNode;
+ var vdomain;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vdomain = doc.domain;
+
+ assertEquals("domainLink","",vdomain);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument04-expected.txt
new file mode 100644
index 0000000..63bff76
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument04.html b/LayoutTests/dom/html/level2/html/HTMLDocument04.html
new file mode 100644
index 0000000..6e56eac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument04.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument04.js b/LayoutTests/dom/html/level2/html/HTMLDocument04.js
new file mode 100644
index 0000000..e6321e8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument04.js
@@ -0,0 +1,110 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "HTMLDocument04");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The URL attribute specifies the absolute URI of the document.
+
+ Retrieve the URL attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46183437
+*/
+function HTMLDocument04() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument04") != null) return;
+ var nodeList;
+ var testNode;
+ var vurl;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "HTMLDocument04");
+ vurl = doc.URL;
+
+ assertURIEquals("URLLink",null,null,null,null,"HTMLDocument04",null,null,true,vurl);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument05-expected.txt
new file mode 100644
index 0000000..25ac670
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument05.html b/LayoutTests/dom/html/level2/html/HTMLDocument05.html
new file mode 100644
index 0000000..290c0af
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument05.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument05.js b/LayoutTests/dom/html/level2/html/HTMLDocument05.js
new file mode 100644
index 0000000..bc2c198
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument05.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The body attribute is the element that contains the content for the
+ document.
+
+ Retrieve the body attribute and examine its value for the id attribute.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-56360201
+*/
+function HTMLDocument05() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument05") != null) return;
+ var nodeList;
+ var testNode;
+ var vbody;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vbody = doc.body;
+
+ vid = vbody.id;
+
+ assertEquals("idLink","TEST-BODY",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument07-expected.txt
new file mode 100644
index 0000000..26dba4b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument07.html b/LayoutTests/dom/html/level2/html/HTMLDocument07.html
new file mode 100644
index 0000000..c4f1315
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument07.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument07.js b/LayoutTests/dom/html/level2/html/HTMLDocument07.js
new file mode 100644
index 0000000..a8e0d31
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument07.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The images attribute returns a collection of all IMG elements in a document.
+
+ Retrieve the images attribute from the document and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90379117
+*/
+function HTMLDocument07() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument07") != null) return;
+ var nodeList;
+ var testNode;
+ var vimages;
+ var vlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vimages = doc.images;
+
+ vlength = vimages.length;
+
+ assertEquals("lengthLink",1,vlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument08-expected.txt
new file mode 100644
index 0000000..bdfeb73
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument08.html b/LayoutTests/dom/html/level2/html/HTMLDocument08.html
new file mode 100644
index 0000000..43cc1e5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument08.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument08.js b/LayoutTests/dom/html/level2/html/HTMLDocument08.js
new file mode 100644
index 0000000..0b72b3c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument08.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The applets attribute returns a collection of all OBJECT elements that
+ include applets abd APPLET elements in a document.
+
+ Retrieve the applets attribute from the document and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85113862
+*/
+function HTMLDocument08() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument08") != null) return;
+ var nodeList;
+ var testNode;
+ var vapplets;
+ var vlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vapplets = doc.applets;
+
+ vlength = vapplets.length;
+
+ assertEquals("length",4,vlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument09-expected.txt
new file mode 100644
index 0000000..8314310
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument09.html b/LayoutTests/dom/html/level2/html/HTMLDocument09.html
new file mode 100644
index 0000000..109d38d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument09.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument09.js b/LayoutTests/dom/html/level2/html/HTMLDocument09.js
new file mode 100644
index 0000000..651be77
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument09.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The links attribute returns a collection of all AREA and A elements
+ in a document with a value for the href attribute.
+
+ Retrieve the links attribute from the document and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7068919
+*/
+function HTMLDocument09() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument09") != null) return;
+ var nodeList;
+ var testNode;
+ var vlinks;
+ var vlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vlinks = doc.links;
+
+ vlength = vlinks.length;
+
+ assertEquals("lengthLink",3,vlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument10-expected.txt
new file mode 100644
index 0000000..7a70adf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument10.html b/LayoutTests/dom/html/level2/html/HTMLDocument10.html
new file mode 100644
index 0000000..7397287
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument10.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument10.js b/LayoutTests/dom/html/level2/html/HTMLDocument10.js
new file mode 100644
index 0000000..78d3540
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument10.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The forms attribute returns a collection of all the forms in a document.
+
+ Retrieve the forms attribute from the document and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-1689064
+*/
+function HTMLDocument10() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument10") != null) return;
+ var nodeList;
+ var testNode;
+ var vforms;
+ var vlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vforms = doc.forms;
+
+ vlength = vforms.length;
+
+ assertEquals("lengthLink",1,vlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument11-expected.txt
new file mode 100644
index 0000000..0a30bcd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument11.html b/LayoutTests/dom/html/level2/html/HTMLDocument11.html
new file mode 100644
index 0000000..001d8ca
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument11.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument11.js b/LayoutTests/dom/html/level2/html/HTMLDocument11.js
new file mode 100644
index 0000000..a618837
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument11.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The anchors attribute returns a collection of all A elements with values
+ for the name attribute.
+
+ Retrieve the anchors attribute from the document and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7577272
+*/
+function HTMLDocument11() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument11") != null) return;
+ var nodeList;
+ var testNode;
+ var vanchors;
+ var vlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vanchors = doc.anchors;
+
+ vlength = vanchors.length;
+
+ assertEquals("lengthLink",1,vlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument12-expected.txt
new file mode 100644
index 0000000..112583a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument12.html b/LayoutTests/dom/html/level2/html/HTMLDocument12.html
new file mode 100644
index 0000000..31e3ddd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument12.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument12.js b/LayoutTests/dom/html/level2/html/HTMLDocument12.js
new file mode 100644
index 0000000..2aa6aa3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument12.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cookie attribute returns the cookies associated with this document.
+
+ Retrieve the cookie attribute and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8747038
+*/
+function HTMLDocument12() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument12") != null) return;
+ var nodeList;
+ var vcookie;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ vcookie = doc.cookie;
+
+ assertEquals("cookieLink","",vcookie);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument13-expected.txt
new file mode 100644
index 0000000..6fa522f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument13.html b/LayoutTests/dom/html/level2/html/HTMLDocument13.html
new file mode 100644
index 0000000..3a31e16
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument13.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument13.js b/LayoutTests/dom/html/level2/html/HTMLDocument13.js
new file mode 100644
index 0000000..366e44c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument13.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The getElementsByName method returns the (possibly empty) collection
+ of elements whose name value is given by the elementName.
+
+ Retrieve all the elements whose name attribute is "mapid".
+ Check the length of the nodelist. It should be 1.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71555259
+*/
+function HTMLDocument13() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument13") != null) return;
+ var nodeList;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ nodeList = doc.getElementsByName("mapid");
+ assertSize("Asize",1,nodeList);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument14-expected.txt
new file mode 100644
index 0000000..56b05a2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument14.html b/LayoutTests/dom/html/level2/html/HTMLDocument14.html
new file mode 100644
index 0000000..416eedc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument14.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument14.js b/LayoutTests/dom/html/level2/html/HTMLDocument14.js
new file mode 100644
index 0000000..c487404
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument14.js
@@ -0,0 +1,110 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The getElementsByName method returns the (possibly empty) collection
+ of elements whose name value is given by the elementName.
+
+ Retrieve all the elements whose name attribute is "noid".
+ Check the length of the nodelist. It should be 0 since
+ the id "noid" does not exist.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71555259
+*/
+function HTMLDocument14() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument14") != null) return;
+ var nodeList;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ nodeList = doc.getElementsByName("noid");
+ assertSize("Asize",0,nodeList);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument15-expected.txt
new file mode 100644
index 0000000..73a8ec5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument15.html b/LayoutTests/dom/html/level2/html/HTMLDocument15.html
new file mode 100644
index 0000000..00d91b1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument15.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument15.js b/LayoutTests/dom/html/level2/html/HTMLDocument15.js
new file mode 100644
index 0000000..eb8e555
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument15.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The getElementById method returns the Element whose id is given by
+ elementId. If no such element exists, returns null.
+
+ Retrieve the element whose id is "mapid".
+ Check the value of the element.
+
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36113835
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId
+*/
+function HTMLDocument15() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument15") != null) return;
+ var elementNode;
+ var elementValue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ elementNode = doc.getElementById("mapid");
+ elementValue = elementNode.nodeName;
+
+ assertEqualsAutoCase("element", "elementId","map",elementValue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument16-expected.txt
new file mode 100644
index 0000000..8272b33
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument16.html b/LayoutTests/dom/html/level2/html/HTMLDocument16.html
new file mode 100644
index 0000000..eb56a6d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument16.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument16.js b/LayoutTests/dom/html/level2/html/HTMLDocument16.js
new file mode 100644
index 0000000..5b3cb28
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument16.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The getElementById method returns the Element whose id is given by
+ elementId. If no such element exists, returns null.
+
+ Retrieve the element whose id is "noid".
+ The value returned should be null since there are not any elements with
+ an id of "noid".
+
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36113835
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId
+*/
+function HTMLDocument16() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument16") != null) return;
+ var elementNode;
+ var elementValue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ elementNode = doc.getElementById("noid");
+ assertNull("elementId",elementNode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument17-expected.txt
new file mode 100644
index 0000000..65338cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument17.html b/LayoutTests/dom/html/level2/html/HTMLDocument17.html
new file mode 100644
index 0000000..45ef3f0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument17.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument17.js b/LayoutTests/dom/html/level2/html/HTMLDocument17.js
new file mode 100644
index 0000000..220349b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument17.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Clears the current document using HTMLDocument.open immediately followed by close.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567
+*/
+function HTMLDocument17() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument17") != null) return;
+ var doc;
+ var bodyElem;
+ var bodyChild;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ doc.open();
+ doc.close();
+ bodyElem = doc.body;
+
+
+ if(
+
+ (bodyElem != null)
+
+ ) {
+ bodyChild = bodyElem.firstChild;
+
+ assertNull("bodyContainsChildren",bodyChild);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument18-expected.txt
new file mode 100644
index 0000000..d632bd8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument18.html b/LayoutTests/dom/html/level2/html/HTMLDocument18.html
new file mode 100644
index 0000000..a13f2ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument18.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument18.js b/LayoutTests/dom/html/level2/html/HTMLDocument18.js
new file mode 100644
index 0000000..f50a1fe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument18.js
@@ -0,0 +1,102 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Calls HTMLDocument.close on a document that has not been opened for modification.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567
+*/
+function HTMLDocument18() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument18") != null) return;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ doc.close();
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument19-expected.txt
new file mode 100644
index 0000000..4cf53cf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument19.html b/LayoutTests/dom/html/level2/html/HTMLDocument19.html
new file mode 100644
index 0000000..3c113cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument19.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument19.js b/LayoutTests/dom/html/level2/html/HTMLDocument19.js
new file mode 100644
index 0000000..c2a7a5f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument19.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Replaces the current document with a valid HTML document using HTMLDocument.open, write and close.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75233634
+*/
+function HTMLDocument19() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument19") != null) return;
+ var doc;
+ var docElem;
+ var title;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ doc.open();
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ doc.write("<html>");
+
+ }
+
+ else {
+ doc.write("<html xmlns='http://www.w3.org/1999/xhtml'>");
+
+ }
+ doc.write("<body>");
+ doc.write("<title>Replacement</title>");
+ doc.write("</body>");
+ doc.write("<p>");
+ doc.write("Hello, World.");
+ doc.write("</p>");
+ doc.write("</body>");
+ doc.write("</html>");
+ doc.close();
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument20-expected.txt
new file mode 100644
index 0000000..3f02965
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument20.html b/LayoutTests/dom/html/level2/html/HTMLDocument20.html
new file mode 100644
index 0000000..1cb1570
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument20.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument20.js b/LayoutTests/dom/html/level2/html/HTMLDocument20.js
new file mode 100644
index 0000000..c78110d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument20.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Replaces the current document with a valid HTML document using HTMLDocument.open, writeln and close.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35318390
+*/
+function HTMLDocument20() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument20") != null) return;
+ var doc;
+ var docElem;
+ var title;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ doc.open();
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ doc.writeln("<html>");
+
+ }
+
+ else {
+ doc.writeln("<html xmlns='http://www.w3.org/1999/xhtml'>");
+
+ }
+ doc.writeln("<body>");
+ doc.writeln("<title>Replacement</title>");
+ doc.writeln("</body>");
+ doc.writeln("<p>");
+ doc.writeln("Hello, World.");
+ doc.writeln("</p>");
+ doc.writeln("</body>");
+ doc.writeln("</html>");
+ doc.close();
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument21-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument21-expected.txt
new file mode 100644
index 0000000..ea02a8c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument21-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument21
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument21.html b/LayoutTests/dom/html/level2/html/HTMLDocument21.html
new file mode 100644
index 0000000..da4836e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument21.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument21.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument21.js b/LayoutTests/dom/html/level2/html/HTMLDocument21.js
new file mode 100644
index 0000000..c4a4a2b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument21.js
@@ -0,0 +1,138 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument21";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Replaces the current document checks that writeln adds a new line.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75233634
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35318390
+*/
+function HTMLDocument21() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument21") != null) return;
+ var doc;
+ var docElem;
+ var preElems;
+ var preElem;
+ var preText;
+ var preValue;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ doc.open();
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ doc.writeln("<html>");
+
+ }
+
+ else {
+ doc.writeln("<html xmlns='http://www.w3.org/1999/xhtml'>");
+
+ }
+ doc.writeln("<body>");
+ doc.writeln("<title>Replacement</title>");
+ doc.writeln("</body>");
+ doc.write("<pre>");
+ doc.writeln("Hello, World.");
+ doc.writeln("Hello, World.");
+ doc.writeln("</pre>");
+ doc.write("<pre>");
+ doc.write("Hello, World.");
+ doc.write("Hello, World.");
+ doc.writeln("</pre>");
+ doc.writeln("</body>");
+ doc.writeln("</html>");
+ doc.close();
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument21();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument22-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument22-expected.txt
new file mode 100644
index 0000000..5a0a931
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument22-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument22
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument22.html b/LayoutTests/dom/html/level2/html/HTMLDocument22.html
new file mode 100644
index 0000000..10331b9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument22.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument22.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument22.js b/LayoutTests/dom/html/level2/html/HTMLDocument22.js
new file mode 100644
index 0000000..2ee8e52
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument22.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument22";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("hTmL", null) returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268
+*/
+function HTMLDocument22() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument22") != null) return;
+ var doc;
+ var state;
+ var version = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ state = doc.isSupported("hTmL",version);
+ assertTrue("isSupportedHTML",state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument22();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument23-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument23-expected.txt
new file mode 100644
index 0000000..bc3879a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument23-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument23
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument23.html b/LayoutTests/dom/html/level2/html/HTMLDocument23.html
new file mode 100644
index 0000000..af20d3c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument23.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument23.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument23.js b/LayoutTests/dom/html/level2/html/HTMLDocument23.js
new file mode 100644
index 0000000..eb83250
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument23.js
@@ -0,0 +1,106 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument23";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("hTmL", "2.0") returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268
+*/
+function HTMLDocument23() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument23") != null) return;
+ var doc;
+ var state;
+ var version = "2.0";
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ state = doc.isSupported("hTmL",version);
+ assertTrue("isSupportedHTML",state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument23();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument24-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument24-expected.txt
new file mode 100644
index 0000000..701e4b6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument24-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument24
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument24.html b/LayoutTests/dom/html/level2/html/HTMLDocument24.html
new file mode 100644
index 0000000..3b564af
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument24.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument24.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument24.js b/LayoutTests/dom/html/level2/html/HTMLDocument24.js
new file mode 100644
index 0000000..d1ddfd0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument24.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument24";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("xhTmL", null) returns true if hasFeature("XML", null) is true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268
+*/
+function HTMLDocument24() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument24") != null) return;
+ var doc;
+ var state;
+ var hasXML;
+ var version = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ hasXML = doc.isSupported("XML",version);
+ state = doc.isSupported("xhTmL",version);
+ assertEquals("isSupportedXHTML",hasXML,state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument24();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument25-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument25-expected.txt
new file mode 100644
index 0000000..78b251f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument25-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument25
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument25.html b/LayoutTests/dom/html/level2/html/HTMLDocument25.html
new file mode 100644
index 0000000..4274d62
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument25.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument25.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument25.js b/LayoutTests/dom/html/level2/html/HTMLDocument25.js
new file mode 100644
index 0000000..a0341d0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument25.js
@@ -0,0 +1,108 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument25";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("xhTmL", "2.0") returns true if hasFeature("XML", "2.0") is true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268
+*/
+function HTMLDocument25() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument25") != null) return;
+ var doc;
+ var state;
+ var hasXML;
+ var version = "2.0";
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ hasXML = doc.isSupported("XML",version);
+ state = doc.isSupported("xhTmL",version);
+ assertEquals("isSupportedXHTML",hasXML,state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument25();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument26-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument26-expected.txt
new file mode 100644
index 0000000..1543f7d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument26-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument26
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument26.html b/LayoutTests/dom/html/level2/html/HTMLDocument26.html
new file mode 100644
index 0000000..efe55bb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument26.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument26.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument26.js b/LayoutTests/dom/html/level2/html/HTMLDocument26.js
new file mode 100644
index 0000000..905249b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument26.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument26";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("cOrE", null) returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268
+*/
+function HTMLDocument26() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument26") != null) return;
+ var doc;
+ var state;
+ var version = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ state = doc.isSupported("cOrE",version);
+ assertTrue("isSupportedCore",state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument26();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument27-expected.txt b/LayoutTests/dom/html/level2/html/HTMLDocument27-expected.txt
new file mode 100644
index 0000000..2ebf2d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument27-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument27
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument27.html b/LayoutTests/dom/html/level2/html/HTMLDocument27.html
new file mode 100644
index 0000000..c24a1ca
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument27.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLDocument27.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif" HEIGHT="10">
+<APPLET ALT="Applet Number 1" CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2" CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLDocument27.js b/LayoutTests/dom/html/level2/html/HTMLDocument27.js
new file mode 100644
index 0000000..145447a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLDocument27.js
@@ -0,0 +1,106 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument27";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "document");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Checks that Node.isSupported("cOrE", "2.0") returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#Level-2-Core-Node-supports
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268
+*/
+function HTMLDocument27() {
+ var success;
+ if(checkInitialization(builder, "HTMLDocument27") != null) return;
+ var doc;
+ var state;
+ var version = "2.0";
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "document");
+ state = doc.isSupported("cOrE",version);
+ assertTrue("isSupportedCore",state);
+
+}
+
+
+
+
+function runTest() {
+ HTMLDocument27();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement01-expected.txt
new file mode 100644
index 0000000..e419b7c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement01.html b/LayoutTests/dom/html/level2/html/HTMLElement01.html
new file mode 100644
index 0000000..7e8a2d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement01.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement01.js b/LayoutTests/dom/html/level2/html/HTMLElement01.js
new file mode 100644
index 0000000..010470d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the HEAD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("head");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-HEAD",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement02-expected.txt
new file mode 100644
index 0000000..0ab0d6e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement02.html b/LayoutTests/dom/html/level2/html/HTMLElement02.html
new file mode 100644
index 0000000..43a819b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement02.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement02.js b/LayoutTests/dom/html/level2/html/HTMLElement02.js
new file mode 100644
index 0000000..9e4646d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SUB element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sub");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-SUB",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement03-expected.txt
new file mode 100644
index 0000000..5e3ba88
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement03.html b/LayoutTests/dom/html/level2/html/HTMLElement03.html
new file mode 100644
index 0000000..a3c515f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement03.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement03.js b/LayoutTests/dom/html/level2/html/HTMLElement03.js
new file mode 100644
index 0000000..cc92fba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SUP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-SUP",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement04-expected.txt
new file mode 100644
index 0000000..fbbdc8a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement04.html b/LayoutTests/dom/html/level2/html/HTMLElement04.html
new file mode 100644
index 0000000..bc91d25
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement04.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement04.js b/LayoutTests/dom/html/level2/html/HTMLElement04.js
new file mode 100644
index 0000000..941a935
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SPAN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("span");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-SPAN",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement05-expected.txt
new file mode 100644
index 0000000..6bd23d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement05.html b/LayoutTests/dom/html/level2/html/HTMLElement05.html
new file mode 100644
index 0000000..e93a68c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement05.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement05.js b/LayoutTests/dom/html/level2/html/HTMLElement05.js
new file mode 100644
index 0000000..20a6a02
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the BDO element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("bdo");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-BDO",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement06-expected.txt
new file mode 100644
index 0000000..a5c4075
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement06.html b/LayoutTests/dom/html/level2/html/HTMLElement06.html
new file mode 100644
index 0000000..34ad335
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement06.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement06.js b/LayoutTests/dom/html/level2/html/HTMLElement06.js
new file mode 100644
index 0000000..0a8c213
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement06.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the TT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("tt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-TT",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement07-expected.txt
new file mode 100644
index 0000000..58f9517
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement07.html b/LayoutTests/dom/html/level2/html/HTMLElement07.html
new file mode 100644
index 0000000..b9f034e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement07.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement07.js b/LayoutTests/dom/html/level2/html/HTMLElement07.js
new file mode 100644
index 0000000..b317f4d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement07.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the I element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("i");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-I",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement08-expected.txt
new file mode 100644
index 0000000..173fdd1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement08.html b/LayoutTests/dom/html/level2/html/HTMLElement08.html
new file mode 100644
index 0000000..431f6fa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement08.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement08.js b/LayoutTests/dom/html/level2/html/HTMLElement08.js
new file mode 100644
index 0000000..3698271
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement08.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the B element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("b");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-B",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement09-expected.txt
new file mode 100644
index 0000000..a029a53
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement09.html b/LayoutTests/dom/html/level2/html/HTMLElement09.html
new file mode 100644
index 0000000..2bdbd38
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement09.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement09.js b/LayoutTests/dom/html/level2/html/HTMLElement09.js
new file mode 100644
index 0000000..e480f88
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement09.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the U element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("u");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-U",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement10-expected.txt
new file mode 100644
index 0000000..a9c2f1e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement10.html b/LayoutTests/dom/html/level2/html/HTMLElement10.html
new file mode 100644
index 0000000..e1c6b12
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement10.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement10.js b/LayoutTests/dom/html/level2/html/HTMLElement10.js
new file mode 100644
index 0000000..16b80ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement10.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the S element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("s");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-S",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement100-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement100-expected.txt
new file mode 100644
index 0000000..024ae10
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement100-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement100
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement100.html b/LayoutTests/dom/html/level2/html/HTMLElement100.html
new file mode 100644
index 0000000..0335963
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement100.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement100.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement100.js b/LayoutTests/dom/html/level2/html/HTMLElement100.js
new file mode 100644
index 0000000..039954e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement100.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement100";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SMALL element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement100() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement100") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("small");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement100();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement101-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement101-expected.txt
new file mode 100644
index 0000000..bac5dfe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement101-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement101
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement101.html b/LayoutTests/dom/html/level2/html/HTMLElement101.html
new file mode 100644
index 0000000..73c8675
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement101.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement101.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement101.js b/LayoutTests/dom/html/level2/html/HTMLElement101.js
new file mode 100644
index 0000000..03c501e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement101.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement101";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the EM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement101() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement101") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("em");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement101();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement102-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement102-expected.txt
new file mode 100644
index 0000000..79f4f6d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement102-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement102
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement102.html b/LayoutTests/dom/html/level2/html/HTMLElement102.html
new file mode 100644
index 0000000..f652902
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement102.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement102.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement102.js b/LayoutTests/dom/html/level2/html/HTMLElement102.js
new file mode 100644
index 0000000..8392870
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement102.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement102";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the STRONG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement102() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement102") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strong");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement102();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement103-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement103-expected.txt
new file mode 100644
index 0000000..e16c601
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement103-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement103
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement103.html b/LayoutTests/dom/html/level2/html/HTMLElement103.html
new file mode 100644
index 0000000..5eb788c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement103.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement103.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement103.js b/LayoutTests/dom/html/level2/html/HTMLElement103.js
new file mode 100644
index 0000000..ad8c8d3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement103.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement103";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the DFN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement103() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement103") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dfn");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement103();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement104-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement104-expected.txt
new file mode 100644
index 0000000..b9ba7aa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement104-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement104
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement104.html b/LayoutTests/dom/html/level2/html/HTMLElement104.html
new file mode 100644
index 0000000..de201bf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement104.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement104.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement104.js b/LayoutTests/dom/html/level2/html/HTMLElement104.js
new file mode 100644
index 0000000..8a889f5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement104.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement104";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the CODE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement104() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement104") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("code");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement104();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement105-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement105-expected.txt
new file mode 100644
index 0000000..bf8af86
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement105-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement105
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement105.html b/LayoutTests/dom/html/level2/html/HTMLElement105.html
new file mode 100644
index 0000000..f8eaf37
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement105.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement105.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement105.js b/LayoutTests/dom/html/level2/html/HTMLElement105.js
new file mode 100644
index 0000000..c6794ee
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement105.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement105";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SAMP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement105() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement105") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("samp");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement105();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement106-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement106-expected.txt
new file mode 100644
index 0000000..28e8544
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement106-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement106
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement106.html b/LayoutTests/dom/html/level2/html/HTMLElement106.html
new file mode 100644
index 0000000..9bdd25b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement106.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement106.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement106.js b/LayoutTests/dom/html/level2/html/HTMLElement106.js
new file mode 100644
index 0000000..de44beb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement106.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement106";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the KBD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement106() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement106") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("kbd");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement106();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement107-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement107-expected.txt
new file mode 100644
index 0000000..a5fa70b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement107-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement107
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement107.html b/LayoutTests/dom/html/level2/html/HTMLElement107.html
new file mode 100644
index 0000000..10aca1c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement107.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement107.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement107.js b/LayoutTests/dom/html/level2/html/HTMLElement107.js
new file mode 100644
index 0000000..b64c4e3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement107.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement107";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the VAR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement107() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement107") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("var");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement107();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement108-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement108-expected.txt
new file mode 100644
index 0000000..7b8f6f3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement108-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement108
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement108.html b/LayoutTests/dom/html/level2/html/HTMLElement108.html
new file mode 100644
index 0000000..cb1a241
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement108.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement108.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement108.js b/LayoutTests/dom/html/level2/html/HTMLElement108.js
new file mode 100644
index 0000000..bb0a31c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement108.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement108";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the CITE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement108() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement108") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("cite");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement108();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement109-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement109-expected.txt
new file mode 100644
index 0000000..caf3035
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement109-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement109
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement109.html b/LayoutTests/dom/html/level2/html/HTMLElement109.html
new file mode 100644
index 0000000..b97a6ef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement109.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement109.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement109.js b/LayoutTests/dom/html/level2/html/HTMLElement109.js
new file mode 100644
index 0000000..60c586c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement109.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement109";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the ACRONYM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement109() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement109") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("acronym");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement109();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement11-expected.txt
new file mode 100644
index 0000000..df9984b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement11.html b/LayoutTests/dom/html/level2/html/HTMLElement11.html
new file mode 100644
index 0000000..c9a652e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement11.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement11.js b/LayoutTests/dom/html/level2/html/HTMLElement11.js
new file mode 100644
index 0000000..44a223f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement11.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the STRIKE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strike");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-STRIKE",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement110-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement110-expected.txt
new file mode 100644
index 0000000..1fa1b73
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement110-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement110
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement110.html b/LayoutTests/dom/html/level2/html/HTMLElement110.html
new file mode 100644
index 0000000..127aeae
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement110.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement110.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement110.js b/LayoutTests/dom/html/level2/html/HTMLElement110.js
new file mode 100644
index 0000000..ce078d8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement110.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement110";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the ABBR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement110() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement110") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("abbr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement110();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement111-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement111-expected.txt
new file mode 100644
index 0000000..a2151cd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement111-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement111
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement111.html b/LayoutTests/dom/html/level2/html/HTMLElement111.html
new file mode 100644
index 0000000..ceca710
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement111.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement111.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement111.js b/LayoutTests/dom/html/level2/html/HTMLElement111.js
new file mode 100644
index 0000000..106edb8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement111.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement111";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the DD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement111() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement111") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dd");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement111();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement112-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement112-expected.txt
new file mode 100644
index 0000000..663d31d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement112-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement112
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement112.html b/LayoutTests/dom/html/level2/html/HTMLElement112.html
new file mode 100644
index 0000000..b40038d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement112.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement112.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement112.js b/LayoutTests/dom/html/level2/html/HTMLElement112.js
new file mode 100644
index 0000000..0375703
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement112.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement112";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the DT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement112() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement112") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement112();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement113-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement113-expected.txt
new file mode 100644
index 0000000..f46676e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement113-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement113
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement113.html b/LayoutTests/dom/html/level2/html/HTMLElement113.html
new file mode 100644
index 0000000..fc38a89
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement113.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement113.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement113.js b/LayoutTests/dom/html/level2/html/HTMLElement113.js
new file mode 100644
index 0000000..74207fd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement113.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement113";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the NOFRAMES element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement113() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement113") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noframes");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement113();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement114-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement114-expected.txt
new file mode 100644
index 0000000..20d01aa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement114-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement114
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement114.html b/LayoutTests/dom/html/level2/html/HTMLElement114.html
new file mode 100644
index 0000000..5314906
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement114.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement114.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement114.js b/LayoutTests/dom/html/level2/html/HTMLElement114.js
new file mode 100644
index 0000000..e487954
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement114.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement114";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the NOSCRIPT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement114() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement114") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noscript");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement114();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement115-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement115-expected.txt
new file mode 100644
index 0000000..c5756d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement115-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement115
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement115.html b/LayoutTests/dom/html/level2/html/HTMLElement115.html
new file mode 100644
index 0000000..39bfb6f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement115.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement115.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement115.js b/LayoutTests/dom/html/level2/html/HTMLElement115.js
new file mode 100644
index 0000000..b96f742
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement115.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement115";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the ADDRESS element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement115() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement115") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("address");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement115();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement116-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement116-expected.txt
new file mode 100644
index 0000000..4d1c927
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement116-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement116
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement116.html b/LayoutTests/dom/html/level2/html/HTMLElement116.html
new file mode 100644
index 0000000..7d19ba5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement116.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement116.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement116.js b/LayoutTests/dom/html/level2/html/HTMLElement116.js
new file mode 100644
index 0000000..3a5b7e0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement116.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement116";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the CENTER element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement116() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement116") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("center");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement116();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement117-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement117-expected.txt
new file mode 100644
index 0000000..86f6ecd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement117-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement117
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement117.html b/LayoutTests/dom/html/level2/html/HTMLElement117.html
new file mode 100644
index 0000000..70c8e4a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement117.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement117.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement117.js b/LayoutTests/dom/html/level2/html/HTMLElement117.js
new file mode 100644
index 0000000..b165df9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement117.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement117";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the HEAD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement117() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement117") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("head");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","HEAD-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement117();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement118-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement118-expected.txt
new file mode 100644
index 0000000..8612760
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement118-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement118
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement118.html b/LayoutTests/dom/html/level2/html/HTMLElement118.html
new file mode 100644
index 0000000..a5f0295
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement118.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement118.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement118.js b/LayoutTests/dom/html/level2/html/HTMLElement118.js
new file mode 100644
index 0000000..21d555c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement118.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement118";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SUB element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement118() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement118") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sub");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","SUB-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement118();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement119-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement119-expected.txt
new file mode 100644
index 0000000..04c1e4a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement119-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement119
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement119.html b/LayoutTests/dom/html/level2/html/HTMLElement119.html
new file mode 100644
index 0000000..4a88c8a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement119.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement119.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement119.js b/LayoutTests/dom/html/level2/html/HTMLElement119.js
new file mode 100644
index 0000000..6066a0c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement119.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement119";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SUP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement119() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement119") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","SUP-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement119();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement12-expected.txt
new file mode 100644
index 0000000..dad0291
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement12.html b/LayoutTests/dom/html/level2/html/HTMLElement12.html
new file mode 100644
index 0000000..d0deee0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement12.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement12.js b/LayoutTests/dom/html/level2/html/HTMLElement12.js
new file mode 100644
index 0000000..efc8ad8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement12.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the BIG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("big");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-BIG",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement120-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement120-expected.txt
new file mode 100644
index 0000000..259a6cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement120-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement120
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement120.html b/LayoutTests/dom/html/level2/html/HTMLElement120.html
new file mode 100644
index 0000000..101b723
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement120.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement120.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement120.js b/LayoutTests/dom/html/level2/html/HTMLElement120.js
new file mode 100644
index 0000000..db57aea
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement120.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement120";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SPAN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement120() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement120") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("span");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","SPAN-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement120();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement121-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement121-expected.txt
new file mode 100644
index 0000000..193c48d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement121-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement121
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement121.html b/LayoutTests/dom/html/level2/html/HTMLElement121.html
new file mode 100644
index 0000000..2c8ac82
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement121.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement121.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement121.js b/LayoutTests/dom/html/level2/html/HTMLElement121.js
new file mode 100644
index 0000000..2cb2616
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement121.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement121";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the BDO element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement121() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement121") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("bdo");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","BDO-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement121();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement122-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement122-expected.txt
new file mode 100644
index 0000000..14ca4d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement122-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement122
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement122.html b/LayoutTests/dom/html/level2/html/HTMLElement122.html
new file mode 100644
index 0000000..5613838
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement122.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement122.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement122.js b/LayoutTests/dom/html/level2/html/HTMLElement122.js
new file mode 100644
index 0000000..548f614
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement122.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement122";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the TT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement122() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement122") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("tt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","TT-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement122();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement123-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement123-expected.txt
new file mode 100644
index 0000000..54a3f49
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement123-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement123
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement123.html b/LayoutTests/dom/html/level2/html/HTMLElement123.html
new file mode 100644
index 0000000..499a17e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement123.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement123.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement123.js b/LayoutTests/dom/html/level2/html/HTMLElement123.js
new file mode 100644
index 0000000..044470c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement123.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement123";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the I element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement123() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement123") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("i");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","I-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement123();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement124-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement124-expected.txt
new file mode 100644
index 0000000..77d90ca
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement124-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement124
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement124.html b/LayoutTests/dom/html/level2/html/HTMLElement124.html
new file mode 100644
index 0000000..3d4cfb6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement124.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement124.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement124.js b/LayoutTests/dom/html/level2/html/HTMLElement124.js
new file mode 100644
index 0000000..1f12330
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement124.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement124";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the B element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement124() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement124") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("b");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","B-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement124();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement125-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement125-expected.txt
new file mode 100644
index 0000000..2d022d8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement125-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement125
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement125.html b/LayoutTests/dom/html/level2/html/HTMLElement125.html
new file mode 100644
index 0000000..9685ef0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement125.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement125.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement125.js b/LayoutTests/dom/html/level2/html/HTMLElement125.js
new file mode 100644
index 0000000..ab2f7da
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement125.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement125";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the U element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement125() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement125") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("u");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","U-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement125();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement126-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement126-expected.txt
new file mode 100644
index 0000000..410ec33
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement126-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement126
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement126.html b/LayoutTests/dom/html/level2/html/HTMLElement126.html
new file mode 100644
index 0000000..11feb92
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement126.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement126.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement126.js b/LayoutTests/dom/html/level2/html/HTMLElement126.js
new file mode 100644
index 0000000..eda2d3b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement126.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement126";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the S element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement126() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement126") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("s");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","S-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement126();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement127-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement127-expected.txt
new file mode 100644
index 0000000..ddb2d2d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement127-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement127
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement127.html b/LayoutTests/dom/html/level2/html/HTMLElement127.html
new file mode 100644
index 0000000..859e973
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement127.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement127.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement127.js b/LayoutTests/dom/html/level2/html/HTMLElement127.js
new file mode 100644
index 0000000..04111b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement127.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement127";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the STRIKE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement127() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement127") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strike");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","STRIKE-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement127();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement128-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement128-expected.txt
new file mode 100644
index 0000000..95609e1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement128-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement128
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement128.html b/LayoutTests/dom/html/level2/html/HTMLElement128.html
new file mode 100644
index 0000000..092d392
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement128.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement128.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement128.js b/LayoutTests/dom/html/level2/html/HTMLElement128.js
new file mode 100644
index 0000000..242dbba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement128.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement128";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the BIG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement128() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement128") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("big");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","BIG-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement128();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement129-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement129-expected.txt
new file mode 100644
index 0000000..ed940f3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement129-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement129
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement129.html b/LayoutTests/dom/html/level2/html/HTMLElement129.html
new file mode 100644
index 0000000..a4430bb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement129.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement129.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement129.js b/LayoutTests/dom/html/level2/html/HTMLElement129.js
new file mode 100644
index 0000000..f4e1470
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement129.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement129";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SMALL element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement129() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement129") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("small");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","SMALL-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement129();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement13-expected.txt
new file mode 100644
index 0000000..68d229f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement13.html b/LayoutTests/dom/html/level2/html/HTMLElement13.html
new file mode 100644
index 0000000..6716273
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement13.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement13.js b/LayoutTests/dom/html/level2/html/HTMLElement13.js
new file mode 100644
index 0000000..9b85dae
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement13.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SMALL element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement13") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("small");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-SMALL",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement130-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement130-expected.txt
new file mode 100644
index 0000000..aaea801
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement130-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement130
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement130.html b/LayoutTests/dom/html/level2/html/HTMLElement130.html
new file mode 100644
index 0000000..7b4e6e6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement130.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement130.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement130.js b/LayoutTests/dom/html/level2/html/HTMLElement130.js
new file mode 100644
index 0000000..1959071
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement130.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement130";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the EM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement130() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement130") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("em");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","EM-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement130();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement131-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement131-expected.txt
new file mode 100644
index 0000000..ec4e6ab
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement131-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement131
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement131.html b/LayoutTests/dom/html/level2/html/HTMLElement131.html
new file mode 100644
index 0000000..637c5db
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement131.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement131.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement131.js b/LayoutTests/dom/html/level2/html/HTMLElement131.js
new file mode 100644
index 0000000..205394d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement131.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement131";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the STRONG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement131() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement131") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strong");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","STRONG-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement131();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement132-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement132-expected.txt
new file mode 100644
index 0000000..e00623a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement132-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement132
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement132.html b/LayoutTests/dom/html/level2/html/HTMLElement132.html
new file mode 100644
index 0000000..debc79d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement132.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement132.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement132.js b/LayoutTests/dom/html/level2/html/HTMLElement132.js
new file mode 100644
index 0000000..6aecb1b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement132.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement132";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the DFN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement132() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement132") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dfn");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","DFN-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement132();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement133-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement133-expected.txt
new file mode 100644
index 0000000..8bf18dc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement133-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement133
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement133.html b/LayoutTests/dom/html/level2/html/HTMLElement133.html
new file mode 100644
index 0000000..e63bfb9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement133.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement133.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement133.js b/LayoutTests/dom/html/level2/html/HTMLElement133.js
new file mode 100644
index 0000000..655386e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement133.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement133";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the CODE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement133() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement133") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("code");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","CODE-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement133();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement134-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement134-expected.txt
new file mode 100644
index 0000000..6ae2cf7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement134-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement134
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement134.html b/LayoutTests/dom/html/level2/html/HTMLElement134.html
new file mode 100644
index 0000000..3f8a335
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement134.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement134.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement134.js b/LayoutTests/dom/html/level2/html/HTMLElement134.js
new file mode 100644
index 0000000..3c015e9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement134.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement134";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the SAMP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement134() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement134") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("samp");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","SAMP-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement134();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement135-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement135-expected.txt
new file mode 100644
index 0000000..979840d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement135-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement135
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement135.html b/LayoutTests/dom/html/level2/html/HTMLElement135.html
new file mode 100644
index 0000000..24a5856
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement135.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement135.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement135.js b/LayoutTests/dom/html/level2/html/HTMLElement135.js
new file mode 100644
index 0000000..7e4c039
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement135.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement135";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the KBD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement135() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement135") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("kbd");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","KBD-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement135();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement136-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement136-expected.txt
new file mode 100644
index 0000000..59c03a2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement136-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement136
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement136.html b/LayoutTests/dom/html/level2/html/HTMLElement136.html
new file mode 100644
index 0000000..5781c9b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement136.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement136.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement136.js b/LayoutTests/dom/html/level2/html/HTMLElement136.js
new file mode 100644
index 0000000..b51d94d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement136.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement136";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the VAR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement136() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement136") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("var");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","VAR-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement136();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement137-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement137-expected.txt
new file mode 100644
index 0000000..b2772fc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement137-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement137
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement137.html b/LayoutTests/dom/html/level2/html/HTMLElement137.html
new file mode 100644
index 0000000..e65ed69
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement137.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement137.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement137.js b/LayoutTests/dom/html/level2/html/HTMLElement137.js
new file mode 100644
index 0000000..dfa7d51
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement137.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement137";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the CITE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement137() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement137") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("cite");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","CITE-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement137();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement138-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement138-expected.txt
new file mode 100644
index 0000000..8bea3f6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement138-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement138
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement138.html b/LayoutTests/dom/html/level2/html/HTMLElement138.html
new file mode 100644
index 0000000..c651540
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement138.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement138.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement138.js b/LayoutTests/dom/html/level2/html/HTMLElement138.js
new file mode 100644
index 0000000..8cfe527
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement138.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement138";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the ACRONYM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement138() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement138") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("acronym");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","ACRONYM-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement138();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement139-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement139-expected.txt
new file mode 100644
index 0000000..57b118d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement139-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement139
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement139.html b/LayoutTests/dom/html/level2/html/HTMLElement139.html
new file mode 100644
index 0000000..10eea4c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement139.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement139.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement139.js b/LayoutTests/dom/html/level2/html/HTMLElement139.js
new file mode 100644
index 0000000..87c7b75
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement139.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement139";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the ABBR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement139() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement139") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("abbr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","ABBR-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement139();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement14-expected.txt
new file mode 100644
index 0000000..425a3a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement14.html b/LayoutTests/dom/html/level2/html/HTMLElement14.html
new file mode 100644
index 0000000..9b8c062
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement14.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement14.js b/LayoutTests/dom/html/level2/html/HTMLElement14.js
new file mode 100644
index 0000000..570cbb3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement14.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the EM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement14") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("em");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-EM",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement140-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement140-expected.txt
new file mode 100644
index 0000000..4f27908
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement140-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement140
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement140.html b/LayoutTests/dom/html/level2/html/HTMLElement140.html
new file mode 100644
index 0000000..21575f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement140.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement140.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement140.js b/LayoutTests/dom/html/level2/html/HTMLElement140.js
new file mode 100644
index 0000000..5a27d3b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement140.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement140";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the DD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement140() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement140") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dd");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","DD-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement140();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement141-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement141-expected.txt
new file mode 100644
index 0000000..b163103
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement141-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement141
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement141.html b/LayoutTests/dom/html/level2/html/HTMLElement141.html
new file mode 100644
index 0000000..25fe296
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement141.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement141.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement141.js b/LayoutTests/dom/html/level2/html/HTMLElement141.js
new file mode 100644
index 0000000..d180ddc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement141.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement141";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the DT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement141() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement141") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","DT-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement141();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement142-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement142-expected.txt
new file mode 100644
index 0000000..d552b16
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement142-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement142
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement142.html b/LayoutTests/dom/html/level2/html/HTMLElement142.html
new file mode 100644
index 0000000..30bc7ef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement142.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement142.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement142.js b/LayoutTests/dom/html/level2/html/HTMLElement142.js
new file mode 100644
index 0000000..1590b95
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement142.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement142";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the NOFRAMES element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement142() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement142") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noframes");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","NOFRAMES-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement142();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement143-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement143-expected.txt
new file mode 100644
index 0000000..fa5ff28
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement143-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement143
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement143.html b/LayoutTests/dom/html/level2/html/HTMLElement143.html
new file mode 100644
index 0000000..96cf440
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement143.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement143.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement143.js b/LayoutTests/dom/html/level2/html/HTMLElement143.js
new file mode 100644
index 0000000..87d709d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement143.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement143";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the NOSCRIPT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement143() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement143") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noscript");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","NOSCRIPT-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement143();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement144-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement144-expected.txt
new file mode 100644
index 0000000..f8291d2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement144-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement144
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement144.html b/LayoutTests/dom/html/level2/html/HTMLElement144.html
new file mode 100644
index 0000000..1659c40
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement144.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement144.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement144.js b/LayoutTests/dom/html/level2/html/HTMLElement144.js
new file mode 100644
index 0000000..e9e9b12
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement144.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement144";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the ADDRESS element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement144() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement144") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("address");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","ADDRESS-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement144();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement145-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement145-expected.txt
new file mode 100644
index 0000000..7aa129f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement145-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement145
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement145.html b/LayoutTests/dom/html/level2/html/HTMLElement145.html
new file mode 100644
index 0000000..19d46af
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement145.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement145.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement145.js b/LayoutTests/dom/html/level2/html/HTMLElement145.js
new file mode 100644
index 0000000..e0d8ed1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement145.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement145";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The className attribute specifies the class attribute of the element.
+
+ Retrieve the class attribute of the CENTER element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176
+*/
+function HTMLElement145() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement145") != null) return;
+ var nodeList;
+ var testNode;
+ var vclassname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("center");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vclassname = testNode.className;
+
+ assertEquals("classNameLink","CENTER-class",vclassname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement145();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement15-expected.txt
new file mode 100644
index 0000000..ecfb545
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement15.html b/LayoutTests/dom/html/level2/html/HTMLElement15.html
new file mode 100644
index 0000000..9e302fc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement15.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement15.js b/LayoutTests/dom/html/level2/html/HTMLElement15.js
new file mode 100644
index 0000000..8136e77
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement15.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the STRONG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement15") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strong");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-STRONG",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement16-expected.txt
new file mode 100644
index 0000000..39cacf2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement16.html b/LayoutTests/dom/html/level2/html/HTMLElement16.html
new file mode 100644
index 0000000..6af9321
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement16.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement16.js b/LayoutTests/dom/html/level2/html/HTMLElement16.js
new file mode 100644
index 0000000..6307477
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement16.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the DFN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement16() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement16") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dfn");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-DFN",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement17-expected.txt
new file mode 100644
index 0000000..d1d84e2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement17.html b/LayoutTests/dom/html/level2/html/HTMLElement17.html
new file mode 100644
index 0000000..01c447d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement17.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement17.js b/LayoutTests/dom/html/level2/html/HTMLElement17.js
new file mode 100644
index 0000000..2c0313d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement17.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the CODE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement17() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement17") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("code");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-CODE",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement18-expected.txt
new file mode 100644
index 0000000..baecfc8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement18.html b/LayoutTests/dom/html/level2/html/HTMLElement18.html
new file mode 100644
index 0000000..99b1708
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement18.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement18.js b/LayoutTests/dom/html/level2/html/HTMLElement18.js
new file mode 100644
index 0000000..729fd37
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement18.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the SAMP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement18() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement18") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("samp");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-SAMP",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement19-expected.txt
new file mode 100644
index 0000000..bcdd5cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement19.html b/LayoutTests/dom/html/level2/html/HTMLElement19.html
new file mode 100644
index 0000000..48e4904
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement19.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement19.js b/LayoutTests/dom/html/level2/html/HTMLElement19.js
new file mode 100644
index 0000000..60e1716
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement19.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the KBD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement19() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement19") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("kbd");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-KBD",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement20-expected.txt
new file mode 100644
index 0000000..ea96c45
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement20.html b/LayoutTests/dom/html/level2/html/HTMLElement20.html
new file mode 100644
index 0000000..5626055
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement20.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement20.js b/LayoutTests/dom/html/level2/html/HTMLElement20.js
new file mode 100644
index 0000000..ab5a998
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement20.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the VAR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement20() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement20") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("var");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-VAR",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement21-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement21-expected.txt
new file mode 100644
index 0000000..5893d1c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement21-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement21
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement21.html b/LayoutTests/dom/html/level2/html/HTMLElement21.html
new file mode 100644
index 0000000..421108f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement21.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement21.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement21.js b/LayoutTests/dom/html/level2/html/HTMLElement21.js
new file mode 100644
index 0000000..17a859d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement21.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement21";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the CITE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement21() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement21") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("cite");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-CITE",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement21();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement22-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement22-expected.txt
new file mode 100644
index 0000000..a2f4fe7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement22-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement22
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement22.html b/LayoutTests/dom/html/level2/html/HTMLElement22.html
new file mode 100644
index 0000000..0446250
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement22.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement22.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement22.js b/LayoutTests/dom/html/level2/html/HTMLElement22.js
new file mode 100644
index 0000000..aec5437
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement22.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement22";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the ACRONYM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement22() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement22") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("acronym");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-ACRONYM",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement22();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement23-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement23-expected.txt
new file mode 100644
index 0000000..983e61f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement23-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement23
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement23.html b/LayoutTests/dom/html/level2/html/HTMLElement23.html
new file mode 100644
index 0000000..4bd16a7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement23.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement23.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement23.js b/LayoutTests/dom/html/level2/html/HTMLElement23.js
new file mode 100644
index 0000000..960f157
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement23.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement23";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the ABBR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement23() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement23") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("abbr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-ABBR",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement23();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement24-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement24-expected.txt
new file mode 100644
index 0000000..f4bbf72
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement24-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement24
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement24.html b/LayoutTests/dom/html/level2/html/HTMLElement24.html
new file mode 100644
index 0000000..2a81c9e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement24.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement24.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement24.js b/LayoutTests/dom/html/level2/html/HTMLElement24.js
new file mode 100644
index 0000000..4f86c3b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement24.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement24";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the DD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement24() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement24") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dd");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-DD",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement24();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement25-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement25-expected.txt
new file mode 100644
index 0000000..31dea97
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement25-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement25
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement25.html b/LayoutTests/dom/html/level2/html/HTMLElement25.html
new file mode 100644
index 0000000..50b66e5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement25.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement25.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement25.js b/LayoutTests/dom/html/level2/html/HTMLElement25.js
new file mode 100644
index 0000000..b17679b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement25.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement25";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the DT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement25() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement25") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-DT",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement25();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement26-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement26-expected.txt
new file mode 100644
index 0000000..9009257
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement26-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement26
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement26.html b/LayoutTests/dom/html/level2/html/HTMLElement26.html
new file mode 100644
index 0000000..cc0e9e1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement26.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement26.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement26.js b/LayoutTests/dom/html/level2/html/HTMLElement26.js
new file mode 100644
index 0000000..6ccd1f5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement26.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement26";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the NOFRAMES element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement26() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement26") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noframes");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-NOFRAMES",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement26();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement27-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement27-expected.txt
new file mode 100644
index 0000000..efad29d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement27-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement27
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement27.html b/LayoutTests/dom/html/level2/html/HTMLElement27.html
new file mode 100644
index 0000000..5dd84d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement27.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement27.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement27.js b/LayoutTests/dom/html/level2/html/HTMLElement27.js
new file mode 100644
index 0000000..17ecc42
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement27.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement27";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the NOSCRIPT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement27() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement27") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noscript");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-NOSCRIPT",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement27();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement28-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement28-expected.txt
new file mode 100644
index 0000000..8b6ef08
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement28-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement28
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement28.html b/LayoutTests/dom/html/level2/html/HTMLElement28.html
new file mode 100644
index 0000000..3baa41b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement28.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement28.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement28.js b/LayoutTests/dom/html/level2/html/HTMLElement28.js
new file mode 100644
index 0000000..5862997
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement28.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement28";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the ADDRESS element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement28() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement28") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("address");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-ADDRESS",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement28();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement29-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement29-expected.txt
new file mode 100644
index 0000000..dcb9796
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement29-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement29
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement29.html b/LayoutTests/dom/html/level2/html/HTMLElement29.html
new file mode 100644
index 0000000..69cc592
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement29.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement29.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement29.js b/LayoutTests/dom/html/level2/html/HTMLElement29.js
new file mode 100644
index 0000000..3447216
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement29.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement29";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id specifies the elements identifier.
+
+ Retrieve the id attribute of the CENTER element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function HTMLElement29() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement29") != null) return;
+ var nodeList;
+ var testNode;
+ var vid;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("center");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vid = testNode.id;
+
+ assertEquals("idLink","Test-CENTER",vid);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement29();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement30-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement30-expected.txt
new file mode 100644
index 0000000..847a9c4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement30-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement30
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement30.html b/LayoutTests/dom/html/level2/html/HTMLElement30.html
new file mode 100644
index 0000000..516b6f8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement30.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement30.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement30.js b/LayoutTests/dom/html/level2/html/HTMLElement30.js
new file mode 100644
index 0000000..13e959b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement30.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement30";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the HEAD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement30() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement30") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("head");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","HEAD Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement30();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement31-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement31-expected.txt
new file mode 100644
index 0000000..3f1ce9b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement31-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement31
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement31.html b/LayoutTests/dom/html/level2/html/HTMLElement31.html
new file mode 100644
index 0000000..babc272
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement31.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement31.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement31.js b/LayoutTests/dom/html/level2/html/HTMLElement31.js
new file mode 100644
index 0000000..5f088d5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement31.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement31";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SUB element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement31() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement31") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sub");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","SUB Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement31();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement32-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement32-expected.txt
new file mode 100644
index 0000000..fd2fbf6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement32-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement32
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement32.html b/LayoutTests/dom/html/level2/html/HTMLElement32.html
new file mode 100644
index 0000000..e92aed4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement32.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement32.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement32.js b/LayoutTests/dom/html/level2/html/HTMLElement32.js
new file mode 100644
index 0000000..8220177
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement32.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement32";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SUP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement32() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement32") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","SUP Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement32();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement33-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement33-expected.txt
new file mode 100644
index 0000000..5dee58b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement33-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement33
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement33.html b/LayoutTests/dom/html/level2/html/HTMLElement33.html
new file mode 100644
index 0000000..c79f46d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement33.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement33.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement33.js b/LayoutTests/dom/html/level2/html/HTMLElement33.js
new file mode 100644
index 0000000..c777fc6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement33.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement33";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SPAN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement33() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement33") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("span");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","SPAN Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement33();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement34-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement34-expected.txt
new file mode 100644
index 0000000..5207b99
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement34-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement34
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement34.html b/LayoutTests/dom/html/level2/html/HTMLElement34.html
new file mode 100644
index 0000000..0715572
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement34.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement34.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement34.js b/LayoutTests/dom/html/level2/html/HTMLElement34.js
new file mode 100644
index 0000000..4a198ce
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement34.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement34";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the BDO element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement34() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement34") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("bdo");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","BDO Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement34();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement35-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement35-expected.txt
new file mode 100644
index 0000000..ffd3094
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement35-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement35
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement35.html b/LayoutTests/dom/html/level2/html/HTMLElement35.html
new file mode 100644
index 0000000..f9adfea
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement35.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement35.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement35.js b/LayoutTests/dom/html/level2/html/HTMLElement35.js
new file mode 100644
index 0000000..0a038a3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement35.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement35";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the TT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement35() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement35") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("tt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","TT Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement35();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement36-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement36-expected.txt
new file mode 100644
index 0000000..7f2c68a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement36-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement36
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement36.html b/LayoutTests/dom/html/level2/html/HTMLElement36.html
new file mode 100644
index 0000000..833f539
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement36.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement36.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement36.js b/LayoutTests/dom/html/level2/html/HTMLElement36.js
new file mode 100644
index 0000000..b842e06
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement36.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement36";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the I element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement36() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement36") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("i");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","I Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement36();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement37-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement37-expected.txt
new file mode 100644
index 0000000..88defb5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement37-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement37
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement37.html b/LayoutTests/dom/html/level2/html/HTMLElement37.html
new file mode 100644
index 0000000..013ee8a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement37.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement37.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement37.js b/LayoutTests/dom/html/level2/html/HTMLElement37.js
new file mode 100644
index 0000000..2afaa8c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement37.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement37";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the B element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement37() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement37") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("b");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","B Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement37();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement38-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement38-expected.txt
new file mode 100644
index 0000000..7feda11
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement38-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement38
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement38.html b/LayoutTests/dom/html/level2/html/HTMLElement38.html
new file mode 100644
index 0000000..4bed8f7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement38.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement38.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement38.js b/LayoutTests/dom/html/level2/html/HTMLElement38.js
new file mode 100644
index 0000000..193cf60
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement38.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement38";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the U element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement38() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement38") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("u");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","U Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement38();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement39-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement39-expected.txt
new file mode 100644
index 0000000..ceb40f6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement39-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement39
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement39.html b/LayoutTests/dom/html/level2/html/HTMLElement39.html
new file mode 100644
index 0000000..deb26f4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement39.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement39.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement39.js b/LayoutTests/dom/html/level2/html/HTMLElement39.js
new file mode 100644
index 0000000..3de565b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement39.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement39";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the S element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement39() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement39") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("s");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","S Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement39();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement40-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement40-expected.txt
new file mode 100644
index 0000000..4665905
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement40-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement40
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement40.html b/LayoutTests/dom/html/level2/html/HTMLElement40.html
new file mode 100644
index 0000000..0b41b7e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement40.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement40.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement40.js b/LayoutTests/dom/html/level2/html/HTMLElement40.js
new file mode 100644
index 0000000..e6420af
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement40.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement40";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the STRIKE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement40() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement40") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strike");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","STRIKE Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement40();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement41-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement41-expected.txt
new file mode 100644
index 0000000..507a824
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement41-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement41
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement41.html b/LayoutTests/dom/html/level2/html/HTMLElement41.html
new file mode 100644
index 0000000..4a747c5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement41.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement41.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement41.js b/LayoutTests/dom/html/level2/html/HTMLElement41.js
new file mode 100644
index 0000000..4e2c3f7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement41.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement41";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the BIG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement41() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement41") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("big");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","BIG Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement41();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement42-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement42-expected.txt
new file mode 100644
index 0000000..c2bb814
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement42-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement42
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement42.html b/LayoutTests/dom/html/level2/html/HTMLElement42.html
new file mode 100644
index 0000000..fb1e2bd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement42.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement42.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement42.js b/LayoutTests/dom/html/level2/html/HTMLElement42.js
new file mode 100644
index 0000000..7aa6967
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement42.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement42";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SMALL element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement42() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement42") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("small");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","SMALL Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement42();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement43-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement43-expected.txt
new file mode 100644
index 0000000..f5c7656
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement43-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement43
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement43.html b/LayoutTests/dom/html/level2/html/HTMLElement43.html
new file mode 100644
index 0000000..d13b48f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement43.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement43.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement43.js b/LayoutTests/dom/html/level2/html/HTMLElement43.js
new file mode 100644
index 0000000..e247244
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement43.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement43";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the EM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement43() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement43") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("em");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","EM Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement43();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement44-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement44-expected.txt
new file mode 100644
index 0000000..cc14342
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement44-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement44
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement44.html b/LayoutTests/dom/html/level2/html/HTMLElement44.html
new file mode 100644
index 0000000..9f0bf2e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement44.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement44.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement44.js b/LayoutTests/dom/html/level2/html/HTMLElement44.js
new file mode 100644
index 0000000..4a7a7db
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement44.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement44";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the STRONG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement44() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement44") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strong");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","STRONG Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement44();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement45-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement45-expected.txt
new file mode 100644
index 0000000..5c42bf6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement45-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement45
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement45.html b/LayoutTests/dom/html/level2/html/HTMLElement45.html
new file mode 100644
index 0000000..5607815
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement45.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement45.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement45.js b/LayoutTests/dom/html/level2/html/HTMLElement45.js
new file mode 100644
index 0000000..175646e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement45.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement45";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the DFN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement45() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement45") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dfn");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","DFN Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement45();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement46-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement46-expected.txt
new file mode 100644
index 0000000..50a35a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement46-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement46
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement46.html b/LayoutTests/dom/html/level2/html/HTMLElement46.html
new file mode 100644
index 0000000..a1febce
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement46.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement46.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement46.js b/LayoutTests/dom/html/level2/html/HTMLElement46.js
new file mode 100644
index 0000000..02d1e51
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement46.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement46";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the CODE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement46() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement46") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("code");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","CODE Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement46();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement47-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement47-expected.txt
new file mode 100644
index 0000000..a92e87e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement47-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement47
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement47.html b/LayoutTests/dom/html/level2/html/HTMLElement47.html
new file mode 100644
index 0000000..672db91
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement47.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement47.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement47.js b/LayoutTests/dom/html/level2/html/HTMLElement47.js
new file mode 100644
index 0000000..d1a9f8c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement47.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement47";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the SAMP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement47() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement47") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("samp");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","SAMP Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement47();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement48-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement48-expected.txt
new file mode 100644
index 0000000..983ac91
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement48-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement48
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement48.html b/LayoutTests/dom/html/level2/html/HTMLElement48.html
new file mode 100644
index 0000000..a054266
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement48.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement48.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement48.js b/LayoutTests/dom/html/level2/html/HTMLElement48.js
new file mode 100644
index 0000000..de59559
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement48.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement48";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the KBD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement48() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement48") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("kbd");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","KBD Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement48();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement49-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement49-expected.txt
new file mode 100644
index 0000000..a4ff3f4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement49-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement49
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement49.html b/LayoutTests/dom/html/level2/html/HTMLElement49.html
new file mode 100644
index 0000000..0c53274
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement49.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement49.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement49.js b/LayoutTests/dom/html/level2/html/HTMLElement49.js
new file mode 100644
index 0000000..3748d53
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement49.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement49";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the VAR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement49() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement49") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("var");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","VAR Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement49();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement50-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement50-expected.txt
new file mode 100644
index 0000000..09245ef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement50-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement50
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement50.html b/LayoutTests/dom/html/level2/html/HTMLElement50.html
new file mode 100644
index 0000000..bbd5cb8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement50.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement50.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement50.js b/LayoutTests/dom/html/level2/html/HTMLElement50.js
new file mode 100644
index 0000000..0cf3eba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement50.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement50";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the CITE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement50() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement50") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("cite");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","CITE Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement50();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement51-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement51-expected.txt
new file mode 100644
index 0000000..916a0fa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement51-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement51
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement51.html b/LayoutTests/dom/html/level2/html/HTMLElement51.html
new file mode 100644
index 0000000..ed0fff3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement51.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement51.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement51.js b/LayoutTests/dom/html/level2/html/HTMLElement51.js
new file mode 100644
index 0000000..7c4b909
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement51.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement51";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the ACRONYM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement51() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement51") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("acronym");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","ACRONYM Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement51();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement52-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement52-expected.txt
new file mode 100644
index 0000000..9e820c9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement52-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement52
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement52.html b/LayoutTests/dom/html/level2/html/HTMLElement52.html
new file mode 100644
index 0000000..7347f59
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement52.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement52.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement52.js b/LayoutTests/dom/html/level2/html/HTMLElement52.js
new file mode 100644
index 0000000..96def49
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement52.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement52";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the ABBR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement52() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement52") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("abbr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","ABBR Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement52();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement53-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement53-expected.txt
new file mode 100644
index 0000000..789a738
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement53-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement53
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement53.html b/LayoutTests/dom/html/level2/html/HTMLElement53.html
new file mode 100644
index 0000000..0e7cf04
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement53.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement53.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement53.js b/LayoutTests/dom/html/level2/html/HTMLElement53.js
new file mode 100644
index 0000000..7cb7e86
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement53.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement53";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the DD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement53() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement53") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dd");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","DD Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement53();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement54-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement54-expected.txt
new file mode 100644
index 0000000..6175b3a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement54-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement54
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement54.html b/LayoutTests/dom/html/level2/html/HTMLElement54.html
new file mode 100644
index 0000000..f4eac45
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement54.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement54.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement54.js b/LayoutTests/dom/html/level2/html/HTMLElement54.js
new file mode 100644
index 0000000..269ef68
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement54.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement54";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the DT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement54() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement54") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","DT Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement54();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement55-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement55-expected.txt
new file mode 100644
index 0000000..327f577
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement55-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement55
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement55.html b/LayoutTests/dom/html/level2/html/HTMLElement55.html
new file mode 100644
index 0000000..3f5616f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement55.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement55.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement55.js b/LayoutTests/dom/html/level2/html/HTMLElement55.js
new file mode 100644
index 0000000..db0bff7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement55.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement55";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the NOFRAMES element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement55() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement55") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noframes");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","NOFRAMES Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement55();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement56-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement56-expected.txt
new file mode 100644
index 0000000..53569ae
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement56-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement56
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement56.html b/LayoutTests/dom/html/level2/html/HTMLElement56.html
new file mode 100644
index 0000000..925a299
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement56.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement56.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement56.js b/LayoutTests/dom/html/level2/html/HTMLElement56.js
new file mode 100644
index 0000000..c7cc587
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement56.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement56";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the NOSCRIPT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement56() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement56") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noscript");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","NOSCRIPT Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement56();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement57-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement57-expected.txt
new file mode 100644
index 0000000..26a9b0a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement57-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement57
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement57.html b/LayoutTests/dom/html/level2/html/HTMLElement57.html
new file mode 100644
index 0000000..e12127b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement57.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement57.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement57.js b/LayoutTests/dom/html/level2/html/HTMLElement57.js
new file mode 100644
index 0000000..28a2171
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement57.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement57";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the ADDRESS element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement57() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement57") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("address");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","ADDRESS Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement57();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement58-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement58-expected.txt
new file mode 100644
index 0000000..8881f7e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement58-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement58
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement58.html b/LayoutTests/dom/html/level2/html/HTMLElement58.html
new file mode 100644
index 0000000..fc63cc7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement58.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement58.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement58.js b/LayoutTests/dom/html/level2/html/HTMLElement58.js
new file mode 100644
index 0000000..191ccc0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement58.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement58";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The title attribute specifies the elements advisory title.
+
+ Retrieve the title attribute of the CENTER element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800
+*/
+function HTMLElement58() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement58") != null) return;
+ var nodeList;
+ var testNode;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("center");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtitle = testNode.title;
+
+ assertEquals("titleLink","CENTER Element",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement58();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement59-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement59-expected.txt
new file mode 100644
index 0000000..287d3bd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement59-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement59
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement59.html b/LayoutTests/dom/html/level2/html/HTMLElement59.html
new file mode 100644
index 0000000..2198cc7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement59.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement59.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement59.js b/LayoutTests/dom/html/level2/html/HTMLElement59.js
new file mode 100644
index 0000000..987c283
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement59.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement59";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the HEAD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement59() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement59") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("head");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement59();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement60-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement60-expected.txt
new file mode 100644
index 0000000..69813f5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement60-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement60
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement60.html b/LayoutTests/dom/html/level2/html/HTMLElement60.html
new file mode 100644
index 0000000..7b3ac92
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement60.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement60.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement60.js b/LayoutTests/dom/html/level2/html/HTMLElement60.js
new file mode 100644
index 0000000..6a8665b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement60.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement60";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SUB element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement60() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement60") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sub");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement60();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement61-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement61-expected.txt
new file mode 100644
index 0000000..2ae211c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement61-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement61
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement61.html b/LayoutTests/dom/html/level2/html/HTMLElement61.html
new file mode 100644
index 0000000..afabd61
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement61.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement61.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement61.js b/LayoutTests/dom/html/level2/html/HTMLElement61.js
new file mode 100644
index 0000000..efc2fe5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement61.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement61";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SUP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement61() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement61") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement61();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement62-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement62-expected.txt
new file mode 100644
index 0000000..ba76dc7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement62-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement62
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement62.html b/LayoutTests/dom/html/level2/html/HTMLElement62.html
new file mode 100644
index 0000000..af3f86a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement62.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement62.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement62.js b/LayoutTests/dom/html/level2/html/HTMLElement62.js
new file mode 100644
index 0000000..88f61b5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement62.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement62";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SPAN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement62() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement62") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("span");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement62();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement63-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement63-expected.txt
new file mode 100644
index 0000000..27bd715
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement63-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement63
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement63.html b/LayoutTests/dom/html/level2/html/HTMLElement63.html
new file mode 100644
index 0000000..e88344a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement63.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement63.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement63.js b/LayoutTests/dom/html/level2/html/HTMLElement63.js
new file mode 100644
index 0000000..44b55b6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement63.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement63";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the BDO element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement63() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement63") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("bdo");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement63();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement64-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement64-expected.txt
new file mode 100644
index 0000000..6c8aad3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement64-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement64
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement64.html b/LayoutTests/dom/html/level2/html/HTMLElement64.html
new file mode 100644
index 0000000..d63223b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement64.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement64.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement64.js b/LayoutTests/dom/html/level2/html/HTMLElement64.js
new file mode 100644
index 0000000..61d7f58
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement64.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement64";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the TT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement64() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement64") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("tt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement64();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement65-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement65-expected.txt
new file mode 100644
index 0000000..369a7a4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement65-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement65
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement65.html b/LayoutTests/dom/html/level2/html/HTMLElement65.html
new file mode 100644
index 0000000..520dec0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement65.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement65.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement65.js b/LayoutTests/dom/html/level2/html/HTMLElement65.js
new file mode 100644
index 0000000..20f7cb6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement65.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement65";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the I element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement65() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement65") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("i");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement65();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement66-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement66-expected.txt
new file mode 100644
index 0000000..652d263
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement66-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement66
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement66.html b/LayoutTests/dom/html/level2/html/HTMLElement66.html
new file mode 100644
index 0000000..4618265
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement66.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement66.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement66.js b/LayoutTests/dom/html/level2/html/HTMLElement66.js
new file mode 100644
index 0000000..7f0f349
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement66.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement66";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the B element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement66() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement66") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("b");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement66();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement67-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement67-expected.txt
new file mode 100644
index 0000000..b1fd0b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement67-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement67
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement67.html b/LayoutTests/dom/html/level2/html/HTMLElement67.html
new file mode 100644
index 0000000..929c63c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement67.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement67.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement67.js b/LayoutTests/dom/html/level2/html/HTMLElement67.js
new file mode 100644
index 0000000..820c698
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement67.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement67";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the U element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement67() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement67") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("u");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement67();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement68-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement68-expected.txt
new file mode 100644
index 0000000..b5b9f67
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement68-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement68
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement68.html b/LayoutTests/dom/html/level2/html/HTMLElement68.html
new file mode 100644
index 0000000..246f53e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement68.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement68.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement68.js b/LayoutTests/dom/html/level2/html/HTMLElement68.js
new file mode 100644
index 0000000..162d5bd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement68.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement68";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the S element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement68() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement68") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("s");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement68();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement69-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement69-expected.txt
new file mode 100644
index 0000000..df82e04
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement69-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement69
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement69.html b/LayoutTests/dom/html/level2/html/HTMLElement69.html
new file mode 100644
index 0000000..0723558
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement69.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement69.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement69.js b/LayoutTests/dom/html/level2/html/HTMLElement69.js
new file mode 100644
index 0000000..75d7589
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement69.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement69";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the STRIKE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement69() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement69") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strike");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement69();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement70-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement70-expected.txt
new file mode 100644
index 0000000..2bd9d4d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement70-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement70
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement70.html b/LayoutTests/dom/html/level2/html/HTMLElement70.html
new file mode 100644
index 0000000..ab729cd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement70.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement70.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement70.js b/LayoutTests/dom/html/level2/html/HTMLElement70.js
new file mode 100644
index 0000000..6a9336d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement70.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement70";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the BIG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement70() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement70") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("big");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement70();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement71-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement71-expected.txt
new file mode 100644
index 0000000..e8298a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement71-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement71
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement71.html b/LayoutTests/dom/html/level2/html/HTMLElement71.html
new file mode 100644
index 0000000..5589777
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement71.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement71.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement71.js b/LayoutTests/dom/html/level2/html/HTMLElement71.js
new file mode 100644
index 0000000..c2f61ab
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement71.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement71";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SMALL element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement71() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement71") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("small");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement71();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement72-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement72-expected.txt
new file mode 100644
index 0000000..0414471
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement72-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement72
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement72.html b/LayoutTests/dom/html/level2/html/HTMLElement72.html
new file mode 100644
index 0000000..995fe72
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement72.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement72.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement72.js b/LayoutTests/dom/html/level2/html/HTMLElement72.js
new file mode 100644
index 0000000..7a94a4e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement72.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement72";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the EM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement72() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement72") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("em");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement72();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement73-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement73-expected.txt
new file mode 100644
index 0000000..4c8f9fa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement73-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement73
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement73.html b/LayoutTests/dom/html/level2/html/HTMLElement73.html
new file mode 100644
index 0000000..dc28a21
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement73.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement73.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement73.js b/LayoutTests/dom/html/level2/html/HTMLElement73.js
new file mode 100644
index 0000000..5186b3f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement73.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement73";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the STRONG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement73() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement73") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strong");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement73();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement74-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement74-expected.txt
new file mode 100644
index 0000000..4b2790f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement74-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement74
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement74.html b/LayoutTests/dom/html/level2/html/HTMLElement74.html
new file mode 100644
index 0000000..085f993
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement74.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement74.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement74.js b/LayoutTests/dom/html/level2/html/HTMLElement74.js
new file mode 100644
index 0000000..bc4ccb5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement74.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement74";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the DFN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement74() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement74") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dfn");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement74();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement75-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement75-expected.txt
new file mode 100644
index 0000000..5a5287d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement75-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement75
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement75.html b/LayoutTests/dom/html/level2/html/HTMLElement75.html
new file mode 100644
index 0000000..26e0e47
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement75.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement75.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement75.js b/LayoutTests/dom/html/level2/html/HTMLElement75.js
new file mode 100644
index 0000000..277e170
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement75.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement75";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the CODE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement75() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement75") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("code");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement75();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement76-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement76-expected.txt
new file mode 100644
index 0000000..d50b8f0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement76-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement76
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement76.html b/LayoutTests/dom/html/level2/html/HTMLElement76.html
new file mode 100644
index 0000000..c2e3baa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement76.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement76.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement76.js b/LayoutTests/dom/html/level2/html/HTMLElement76.js
new file mode 100644
index 0000000..7c74084
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement76.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement76";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the SAMP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement76() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement76") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("samp");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement76();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement77-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement77-expected.txt
new file mode 100644
index 0000000..fd97881
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement77-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement77
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement77.html b/LayoutTests/dom/html/level2/html/HTMLElement77.html
new file mode 100644
index 0000000..ab37998
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement77.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement77.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement77.js b/LayoutTests/dom/html/level2/html/HTMLElement77.js
new file mode 100644
index 0000000..5e53bb2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement77.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement77";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the KBD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement77() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement77") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("kbd");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement77();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement78-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement78-expected.txt
new file mode 100644
index 0000000..9d03d03
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement78-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement78
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement78.html b/LayoutTests/dom/html/level2/html/HTMLElement78.html
new file mode 100644
index 0000000..3d686bb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement78.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement78.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement78.js b/LayoutTests/dom/html/level2/html/HTMLElement78.js
new file mode 100644
index 0000000..4a812cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement78.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement78";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the VAR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement78() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement78") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("var");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement78();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement79-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement79-expected.txt
new file mode 100644
index 0000000..cefa54a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement79-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement79
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement79.html b/LayoutTests/dom/html/level2/html/HTMLElement79.html
new file mode 100644
index 0000000..8b56cd1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement79.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement79.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement79.js b/LayoutTests/dom/html/level2/html/HTMLElement79.js
new file mode 100644
index 0000000..0e018c0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement79.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement79";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the CITE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement79() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement79") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("cite");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement79();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement80-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement80-expected.txt
new file mode 100644
index 0000000..766be90
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement80-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement80
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement80.html b/LayoutTests/dom/html/level2/html/HTMLElement80.html
new file mode 100644
index 0000000..5ffbd0e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement80.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement80.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement80.js b/LayoutTests/dom/html/level2/html/HTMLElement80.js
new file mode 100644
index 0000000..98312eb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement80.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement80";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the ACRONYM element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement80() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement80") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("acronym");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement80();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement81-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement81-expected.txt
new file mode 100644
index 0000000..fbcd1c9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement81-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement81
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement81.html b/LayoutTests/dom/html/level2/html/HTMLElement81.html
new file mode 100644
index 0000000..1905e88
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement81.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement81.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement81.js b/LayoutTests/dom/html/level2/html/HTMLElement81.js
new file mode 100644
index 0000000..9919028
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement81.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement81";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the ABBR element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement81() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement81") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("abbr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement81();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement82-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement82-expected.txt
new file mode 100644
index 0000000..7da7ee3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement82-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement82
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement82.html b/LayoutTests/dom/html/level2/html/HTMLElement82.html
new file mode 100644
index 0000000..32bbb7b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement82.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement82.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement82.js b/LayoutTests/dom/html/level2/html/HTMLElement82.js
new file mode 100644
index 0000000..8a42639
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement82.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement82";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the DD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement82() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement82") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dd");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement82();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement83-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement83-expected.txt
new file mode 100644
index 0000000..a018c9c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement83-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement83
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement83.html b/LayoutTests/dom/html/level2/html/HTMLElement83.html
new file mode 100644
index 0000000..84c083e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement83.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement83.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement83.js b/LayoutTests/dom/html/level2/html/HTMLElement83.js
new file mode 100644
index 0000000..91a3d09
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement83.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement83";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the DT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement83() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement83") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("dt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement83();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement84-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement84-expected.txt
new file mode 100644
index 0000000..a51c895
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement84-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement84
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement84.html b/LayoutTests/dom/html/level2/html/HTMLElement84.html
new file mode 100644
index 0000000..b905047
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement84.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement84.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement84.js b/LayoutTests/dom/html/level2/html/HTMLElement84.js
new file mode 100644
index 0000000..0f99c06
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement84.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement84";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the NOFRAMES element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement84() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement84") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noframes");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement84();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement85-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement85-expected.txt
new file mode 100644
index 0000000..b50882e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement85-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement85
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement85.html b/LayoutTests/dom/html/level2/html/HTMLElement85.html
new file mode 100644
index 0000000..b94c086
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement85.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement85.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement85.js b/LayoutTests/dom/html/level2/html/HTMLElement85.js
new file mode 100644
index 0000000..8850a07
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement85.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement85";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the NOSCRIPT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement85() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement85") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("noscript");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement85();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement86-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement86-expected.txt
new file mode 100644
index 0000000..bc46e9a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement86-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement86
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement86.html b/LayoutTests/dom/html/level2/html/HTMLElement86.html
new file mode 100644
index 0000000..5ee8328
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement86.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement86.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement86.js b/LayoutTests/dom/html/level2/html/HTMLElement86.js
new file mode 100644
index 0000000..6e13bac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement86.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement86";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the ADDRESS element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement86() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement86") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("address");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement86();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement87-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement87-expected.txt
new file mode 100644
index 0000000..62b28b9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement87-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement87
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement87.html b/LayoutTests/dom/html/level2/html/HTMLElement87.html
new file mode 100644
index 0000000..ac4498a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement87.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement87.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement87.js b/LayoutTests/dom/html/level2/html/HTMLElement87.js
new file mode 100644
index 0000000..a27d786
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement87.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement87";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The lang attribute specifies the language code defined in RFC 1766.
+
+ Retrieve the lang attribute of the CENTER element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807
+*/
+function HTMLElement87() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement87") != null) return;
+ var nodeList;
+ var testNode;
+ var vlang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("center");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vlang = testNode.lang;
+
+ assertEquals("langLink","en",vlang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement87();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement88-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement88-expected.txt
new file mode 100644
index 0000000..37906ac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement88-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement88
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement88.html b/LayoutTests/dom/html/level2/html/HTMLElement88.html
new file mode 100644
index 0000000..d4537c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement88.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement88.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement88.js b/LayoutTests/dom/html/level2/html/HTMLElement88.js
new file mode 100644
index 0000000..5bf6131
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement88.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement88";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the HEAD element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement88() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement88") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("head");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement88();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement89-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement89-expected.txt
new file mode 100644
index 0000000..a59e7d2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement89-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement89
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement89.html b/LayoutTests/dom/html/level2/html/HTMLElement89.html
new file mode 100644
index 0000000..2787b13
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement89.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement89.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement89.js b/LayoutTests/dom/html/level2/html/HTMLElement89.js
new file mode 100644
index 0000000..6714cd2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement89.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement89";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SUB element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement89() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement89") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sub");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement89();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement90-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement90-expected.txt
new file mode 100644
index 0000000..8d17128
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement90-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement90
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement90.html b/LayoutTests/dom/html/level2/html/HTMLElement90.html
new file mode 100644
index 0000000..8dc6975
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement90.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement90.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement90.js b/LayoutTests/dom/html/level2/html/HTMLElement90.js
new file mode 100644
index 0000000..f093155
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement90.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement90";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SUP element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement90() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement90") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("sup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement90();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement91-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement91-expected.txt
new file mode 100644
index 0000000..7912569
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement91-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement91
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement91.html b/LayoutTests/dom/html/level2/html/HTMLElement91.html
new file mode 100644
index 0000000..2779fbd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement91.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement91.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement91.js b/LayoutTests/dom/html/level2/html/HTMLElement91.js
new file mode 100644
index 0000000..a83c527
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement91.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement91";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the SPAN element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement91() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement91") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("span");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement91();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement92-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement92-expected.txt
new file mode 100644
index 0000000..f0a97b6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement92-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement92
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement92.html b/LayoutTests/dom/html/level2/html/HTMLElement92.html
new file mode 100644
index 0000000..da8257a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement92.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement92.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement92.js b/LayoutTests/dom/html/level2/html/HTMLElement92.js
new file mode 100644
index 0000000..3c1bf35
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement92.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement92";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the BDO element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement92() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement92") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("bdo");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement92();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement93-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement93-expected.txt
new file mode 100644
index 0000000..0ec1f61
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement93-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement93
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement93.html b/LayoutTests/dom/html/level2/html/HTMLElement93.html
new file mode 100644
index 0000000..7d786b6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement93.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement93.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement93.js b/LayoutTests/dom/html/level2/html/HTMLElement93.js
new file mode 100644
index 0000000..ae86a05
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement93.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement93";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the TT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement93() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement93") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("tt");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement93();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement94-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement94-expected.txt
new file mode 100644
index 0000000..ab5552d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement94-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement94
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement94.html b/LayoutTests/dom/html/level2/html/HTMLElement94.html
new file mode 100644
index 0000000..e0f08f5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement94.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement94.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement94.js b/LayoutTests/dom/html/level2/html/HTMLElement94.js
new file mode 100644
index 0000000..67ba5c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement94.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement94";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the I element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement94() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement94") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("i");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement94();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement95-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement95-expected.txt
new file mode 100644
index 0000000..1207fd4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement95-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement95
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement95.html b/LayoutTests/dom/html/level2/html/HTMLElement95.html
new file mode 100644
index 0000000..a64c661
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement95.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement95.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement95.js b/LayoutTests/dom/html/level2/html/HTMLElement95.js
new file mode 100644
index 0000000..be77082
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement95.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement95";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the B element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement95() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement95") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("b");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement95();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement96-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement96-expected.txt
new file mode 100644
index 0000000..037f4a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement96-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement96
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement96.html b/LayoutTests/dom/html/level2/html/HTMLElement96.html
new file mode 100644
index 0000000..a52a4f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement96.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement96.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement96.js b/LayoutTests/dom/html/level2/html/HTMLElement96.js
new file mode 100644
index 0000000..41f7586
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement96.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement96";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the U element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement96() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement96") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("u");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement96();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement97-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement97-expected.txt
new file mode 100644
index 0000000..510b1fe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement97-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement97
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement97.html b/LayoutTests/dom/html/level2/html/HTMLElement97.html
new file mode 100644
index 0000000..da43661
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement97.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement97.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement97.js b/LayoutTests/dom/html/level2/html/HTMLElement97.js
new file mode 100644
index 0000000..adc9d1f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement97.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement97";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the S element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement97() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement97") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("s");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement97();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement98-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement98-expected.txt
new file mode 100644
index 0000000..ff595f4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement98-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement98
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement98.html b/LayoutTests/dom/html/level2/html/HTMLElement98.html
new file mode 100644
index 0000000..c2824e5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement98.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement98.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement98.js b/LayoutTests/dom/html/level2/html/HTMLElement98.js
new file mode 100644
index 0000000..d78b6aa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement98.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement98";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the STRIKE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement98() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement98") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("strike");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement98();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement99-expected.txt b/LayoutTests/dom/html/level2/html/HTMLElement99-expected.txt
new file mode 100644
index 0000000..2ebb28a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement99-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement99
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement99.html b/LayoutTests/dom/html/level2/html/HTMLElement99.html
new file mode 100644
index 0000000..07977ab
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement99.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD ID="Test-HEAD" TITLE="HEAD Element" LANG="en" DIR="ltr" CLASS="HEAD-class">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Element</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLElement99.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<CENTER ID="Test-CENTER" TITLE="CENTER Element" LANG="en" DIR="ltr" CLASS="CENTER-class">
+<OBJECT align="middle"></OBJECT>
+</CENTER>
+<CENTER>
+<P align="center">Test Lists</P>
+</CENTER>
+<BR>
+<OL compact="compact" start="1" type="1">
+ <LI type="square" value=2>EMP0001
+ <UL compact type="disc">
+ <LI>Margaret Martin
+ <DL>
+ <DD ID="Test-DD" TITLE="DD Element" LANG="en" DIR="ltr" CLASS="DD-class">Accountant</DD>
+ <DD>56,000</DD>
+ <DD>Female</DD>
+ <DD>1230 North Ave. Dallas, Texas 98551</DD>
+ </DL>
+ </LI>
+ </UL>
+ </LI>
+</OL>
+<BR />
+<B ID="Test-B" TITLE="B Element" LANG="en" DIR="ltr" CLASS="B-class">Bold</B>
+<BR />
+<DL>
+ <DT ID="Test-DT" TITLE="DT Element" LANG="en" DIR="ltr" CLASS="DT-class">DT element</DT>
+</DL>
+<BR />
+<BDO ID="Test-BDO" TITLE="BDO Element" LANG="en" DIR="ltr" CLASS="BDO-class">Bidirectional algorithm overide
+</BDO>
+<BR />
+<I ID="Test-I" TITLE="I Element" LANG="en" DIR="ltr" CLASS="I-class">Italicized</I>
+<BR />
+<SPAN ID="Test-SPAN" TITLE="SPAN Element" LANG="en" DIR="ltr" CLASS="SPAN-class"></SPAN>
+<BR />
+<TT ID="Test-TT" TITLE="TT Element" LANG="en" DIR="ltr" CLASS="TT-class">Teletype</TT>
+<BR />
+<SUB ID="Test-SUB" TITLE="SUB Element" LANG="en" DIR="ltr" CLASS="SUB-class">Subscript</SUB>
+<BR />
+<SUP ID="Test-SUP" TITLE="SUP Element" LANG="en" DIR="ltr" CLASS="SUP-class">SuperScript</SUP>
+<BR />
+<S ID="Test-S" TITLE="S Element" LANG="en" DIR="ltr" CLASS="S-class">Strike Through (S)</S>
+<BR />
+<STRIKE ID="Test-STRIKE" TITLE="STRIKE Element" LANG="en" DIR="ltr" CLASS="STRIKE-class">Strike Through (STRIKE)</STRIKE>
+<BR />
+<SMALL id="Test-SMALL" TITLE="SMALL Element" LANG="en" DIR="ltr" CLASS="SMALL-class">Small</SMALL>
+<BR />
+<BIG ID="Test-BIG" TITLE="BIG Element" LANG="en" DIR="ltr" CLASS="BIG-class">Big</BIG>
+<BR />
+<EM ID="Test-EM" TITLE="EM Element" LANG="en" DIR="ltr" CLASS="EM-class">Emphasis</EM>
+<BR />
+<STRONG ID="Test-STRONG" TITLE="STRONG Element" LANG="en" DIR="ltr" CLASS="STRONG-class">Strong</STRONG>
+<BR />
+<DFN ID="Test-DFN" TITLE="DFN Element" LANG="en" DIR="ltr" CLASS="DFN-class">
+ <CODE ID="Test-CODE" TITLE="CODE Element" LANG="en" DIR="ltr" CLASS="CODE-class">10 Computer Code Fragment 20 Temp = 10</CODE>
+ <SAMP ID="Test-SAMP" TITLE="SAMP Element" LANG="en" DIR="ltr" CLASS="SAMP-class">Temp = 20</SAMP>
+ <KBD ID="Test-KBD" TITLE="KBD Element" LANG="en" DIR="ltr" CLASS="KBD-class">*2</KBD>
+ <VAR ID="Test-VAR" TITLE="VAR Element" LANG="en" DIR="ltr" CLASS="VAR-class">Temp</VAR>
+ <CITE ID="Test-CITE" TITLE="CITE Element" LANG="en" DIR="ltr" CLASS="CITE-class">Citation</CITE>
+</DFN>
+<BR />
+<ABBR ID="Test-ABBR" TITLE="ABBR Element" LANG="en" DIR="ltr" CLASS="ABBR-class">Temp</ABBR>
+<BR />
+<ACRONYM ID="Test-ACRONYM" TITLE="ACRONYM Element" LANG="en" DIR="ltr" CLASS="ACRONYM-class">NIST</ACRONYM>
+<BR />
+<ADDRESS ID="Test-ADDRESS" TITLE="ADDRESS Element" LANG="en" DIR="ltr" CLASS="ADDRESS-class">Gaithersburg, MD 20899</ADDRESS>
+<BR />
+<NOFRAMES ID="Test-NOFRAMES" TITLE="NOFRAMES Element" LANG="en" DIR="ltr" CLASS="NOFRAMES-class">Not</NOFRAMES>
+<BR />
+<NOSCRIPT ID="Test-NOSCRIPT" TITLE="NOSCRIPT Element" LANG="en" DIR="ltr" CLASS="NOSCRIPT-class">Not</NoScript>
+<BR />
+<U ID="Test-U" TITLE="U Element" LANG="en" DIR="ltr" CLASS="U-class">Underlined</U>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLElement99.js b/LayoutTests/dom/html/level2/html/HTMLElement99.js
new file mode 100644
index 0000000..8068362
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLElement99.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement99";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "element");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dir attribute specifies the base direction of directionally neutral text and the directionality of tables.
+
+ Retrieve the dir attribute of the BIG element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740
+*/
+function HTMLElement99() {
+ var success;
+ if(checkInitialization(builder, "HTMLElement99") != null) return;
+ var nodeList;
+ var testNode;
+ var vdir;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "element");
+ nodeList = doc.getElementsByTagName("big");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdir = testNode.dir;
+
+ assertEquals("dirLink","ltr",vdir);
+
+}
+
+
+
+
+function runTest() {
+ HTMLElement99();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01-expected.txt
new file mode 100644
index 0000000..c58f424
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFieldSetElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01.html b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01.html
new file mode 100644
index 0000000..2500f22
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FieldSet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFieldSetElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<FIELDSET>
+<LEGEND>All data entered must be valid</LEGEND>
+</FIELDSET>
+</FORM>
+<TABLE SUMMARY="Table 1">
+<TR>
+<TD>
+<FIELDSET>
+<LEGEND>All data entered must be valid</LEGEND>
+</FIELDSET>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01.js b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01.js
new file mode 100644
index 0000000..f7e114f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement01.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFieldSetElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "fieldset");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75392630
+*/
+function HTMLFieldSetElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLFieldSetElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var fNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "fieldset");
+ nodeList = doc.getElementsByTagName("fieldset");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("formLink","form2",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFieldSetElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02-expected.txt
new file mode 100644
index 0000000..de310b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFieldSetElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02.html b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02.html
new file mode 100644
index 0000000..3a196d8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FieldSet</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFieldSetElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<FIELDSET>
+<LEGEND>All data entered must be valid</LEGEND>
+</FIELDSET>
+</FORM>
+<TABLE SUMMARY="Table 1">
+<TR>
+<TD>
+<FIELDSET>
+<LEGEND>All data entered must be valid</LEGEND>
+</FIELDSET>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02.js b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02.js
new file mode 100644
index 0000000..bfff386
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFieldSetElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFieldSetElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "fieldset");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75392630
+*/
+function HTMLFieldSetElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLFieldSetElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "fieldset");
+ nodeList = doc.getElementsByTagName("fieldset");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFieldSetElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFontElement01-expected.txt
new file mode 100644
index 0000000..268d9cf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement01.html b/LayoutTests/dom/html/level2/html/HTMLFontElement01.html
new file mode 100644
index 0000000..2d7e14b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement01.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Font</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFontElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FONT COLOR="#000000" FACE="arial,helvetica" SIZE="4">Test Tables</FONT>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement01.js b/LayoutTests/dom/html/level2/html/HTMLFontElement01.js
new file mode 100644
index 0000000..acd58b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "font");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The color attribute specifies the font's color.
+
+ Retrieve the color attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53532975
+*/
+function HTMLFontElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLFontElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "font");
+ nodeList = doc.getElementsByTagName("font");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcolor = testNode.color;
+
+ assertEquals("colorLink","#000000",vcolor);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFontElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFontElement02-expected.txt
new file mode 100644
index 0000000..e3dda13
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement02.html b/LayoutTests/dom/html/level2/html/HTMLFontElement02.html
new file mode 100644
index 0000000..9e4545e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement02.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Font</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFontElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FONT COLOR="#000000" FACE="arial,helvetica" SIZE="4">Test Tables</FONT>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement02.js b/LayoutTests/dom/html/level2/html/HTMLFontElement02.js
new file mode 100644
index 0000000..f194275
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "font");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The face attribute specifies the font's face identifier.
+
+ Retrieve the face attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-55715655
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLFormElement-length
+*/
+function HTMLFontElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLFontElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vface;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "font");
+ nodeList = doc.getElementsByTagName("font");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vface = testNode.face;
+
+ assertEquals("faceLink","arial,helvetica",vface);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFontElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFontElement03-expected.txt
new file mode 100644
index 0000000..aa34e5b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement03.html b/LayoutTests/dom/html/level2/html/HTMLFontElement03.html
new file mode 100644
index 0000000..6436edd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement03.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Font</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFontElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FONT COLOR="#000000" FACE="arial,helvetica" SIZE="4">Test Tables</FONT>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFontElement03.js b/LayoutTests/dom/html/level2/html/HTMLFontElement03.js
new file mode 100644
index 0000000..21fd7b4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFontElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "font");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The size attribute specifies the font's size.
+
+ Retrieve the size attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90127284
+*/
+function HTMLFontElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLFontElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vsize;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "font");
+ nodeList = doc.getElementsByTagName("font");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vsize = testNode.size;
+
+ assertEquals("sizeLink","4",vsize);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFontElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement01-expected.txt
new file mode 100644
index 0000000..25d5a88
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement01.html b/LayoutTests/dom/html/level2/html/HTMLFormElement01.html
new file mode 100644
index 0000000..d02442a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement01.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement01.js b/LayoutTests/dom/html/level2/html/HTMLFormElement01.js
new file mode 100644
index 0000000..a7f8bf8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement01.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The elements attribute specifies a collection of all control element
+ in the form.
+
+ Retrieve the elements attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479
+*/
+function HTMLFormElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement01") != null) return;
+ var nodeList;
+ var elementnodeList;
+ var testNode;
+ var velements;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ elementnodeList = testNode.elements;
+
+ velements = elementnodeList.length;
+
+ assertEquals("elementsLink",3,velements);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement02-expected.txt
new file mode 100644
index 0000000..6313656
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement02.html b/LayoutTests/dom/html/level2/html/HTMLFormElement02.html
new file mode 100644
index 0000000..343cfac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement02.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement02.js b/LayoutTests/dom/html/level2/html/HTMLFormElement02.js
new file mode 100644
index 0000000..1b70a00
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The length attribute specifies the number of form controls
+ in the form.
+
+ Retrieve the length attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40002357
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLFormElement-length
+*/
+function HTMLFormElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlength = testNode.length;
+
+ assertEquals("lengthLink",3,vlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement03-expected.txt
new file mode 100644
index 0000000..7feb78d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement03.html b/LayoutTests/dom/html/level2/html/HTMLFormElement03.html
new file mode 100644
index 0000000..2920d6f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement03.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement03.js b/LayoutTests/dom/html/level2/html/HTMLFormElement03.js
new file mode 100644
index 0000000..915c5be
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The id(name) attribute specifies the name of the form.
+
+ Retrieve the id attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22051454
+*/
+function HTMLFormElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.id;
+
+ assertEquals("nameLink","form1",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement04-expected.txt
new file mode 100644
index 0000000..5d828c4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement04.html b/LayoutTests/dom/html/level2/html/HTMLFormElement04.html
new file mode 100644
index 0000000..9a92b9d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement04.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement04.js b/LayoutTests/dom/html/level2/html/HTMLFormElement04.js
new file mode 100644
index 0000000..ca7fd77
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The acceptCharset attribute specifies the list of character sets
+ supported by the server.
+
+ Retrieve the acceptCharset attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19661795
+*/
+function HTMLFormElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vacceptcharset;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vacceptcharset = testNode.acceptCharset;
+
+ assertEquals("acceptCharsetLink","US-ASCII",vacceptcharset);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement05-expected.txt
new file mode 100644
index 0000000..49cbc55
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement05.html b/LayoutTests/dom/html/level2/html/HTMLFormElement05.html
new file mode 100644
index 0000000..37b0adf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement05.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement05.js b/LayoutTests/dom/html/level2/html/HTMLFormElement05.js
new file mode 100644
index 0000000..9a35e69
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The action attribute specifies the server-side form handler.
+
+ Retrieve the action attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74049184
+*/
+function HTMLFormElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vaction;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vaction = testNode.action;
+
+ assertURIEquals("actionLink",null,null,null,"getData.pl",null,null,null,null,vaction);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement06-expected.txt
new file mode 100644
index 0000000..cf15a63
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement06.html b/LayoutTests/dom/html/level2/html/HTMLFormElement06.html
new file mode 100644
index 0000000..540f1ef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement06.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement06.js b/LayoutTests/dom/html/level2/html/HTMLFormElement06.js
new file mode 100644
index 0000000..0f3d228
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement06.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The enctype attribute specifies the content of the submitted form.
+
+ Retrieve the enctype attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84227810
+*/
+function HTMLFormElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var venctype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ venctype = testNode.enctype;
+
+ assertEquals("enctypeLink","application/x-www-form-urlencoded",venctype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement07-expected.txt
new file mode 100644
index 0000000..8cbd397
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement07.html b/LayoutTests/dom/html/level2/html/HTMLFormElement07.html
new file mode 100644
index 0000000..12b1676
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement07.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement07.js b/LayoutTests/dom/html/level2/html/HTMLFormElement07.js
new file mode 100644
index 0000000..b18bc8c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement07.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The method attribute specifies the HTTP method used to submit the form.
+
+ Retrieve the method attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82545539
+*/
+function HTMLFormElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vmethod;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vmethod = testNode.method;
+
+ assertEquals("methodLink","post",vmethod);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement08-expected.txt
new file mode 100644
index 0000000..02cd28b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement08.html b/LayoutTests/dom/html/level2/html/HTMLFormElement08.html
new file mode 100644
index 0000000..1c5e6dc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement08.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" TARGET="dynamic" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement08.js b/LayoutTests/dom/html/level2/html/HTMLFormElement08.js
new file mode 100644
index 0000000..a180b46
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement08.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The target attribute specifies the frame to render the resource in.
+
+ Retrieve the target attribute and examine it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6512890
+*/
+function HTMLFormElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vtarget;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form2");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtarget = testNode.target;
+
+ assertEquals("targetLink","dynamic",vtarget);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement09-expected.txt
new file mode 100644
index 0000000..9fd4969
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement09.html b/LayoutTests/dom/html/level2/html/HTMLFormElement09.html
new file mode 100644
index 0000000..6dd2a65
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement09.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FORM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" TARGET="dynamic" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement09.js b/LayoutTests/dom/html/level2/html/HTMLFormElement09.js
new file mode 100644
index 0000000..bf92eb8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement09.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+HTMLFormElement.reset restores the forms default values.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76767677
+*/
+function HTMLFormElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form2");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ testNode.reset();
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFormElement10-expected.txt
new file mode 100644
index 0000000..1d11f50
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement10.html b/LayoutTests/dom/html/level2/html/HTMLFormElement10.html
new file mode 100644
index 0000000..365ccea
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement10.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>FORM3</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFormElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="about:blank">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="submit2" VALUE="Reset" />
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLFormElement10.js b/LayoutTests/dom/html/level2/html/HTMLFormElement10.js
new file mode 100644
index 0000000..834740e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFormElement10.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "form3");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+HTMLFormElement.submit submits the form.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76767676
+*/
+function HTMLFormElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLFormElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "form3");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ testNode.submit();
+
+}
+
+
+
+
+function runTest() {
+ HTMLFormElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement01-expected.txt
new file mode 100644
index 0000000..42f165a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement01.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement01.html
new file mode 100644
index 0000000..45c23df
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement01.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement01.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement01.js
new file mode 100644
index 0000000..d83bd0e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement01.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The frameBorder attribute specifies the request for frame borders.
+ (frameBorder=1 A border is drawn)
+ (FrameBorder=0 A border is not drawn)
+
+ Retrieve the frameBorder attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11858633
+*/
+function HTMLFrameElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vframeborder;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame");
+ nodeList = doc.getElementsByTagName("frame");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vframeborder = testNode.frameBorder;
+
+ assertEquals("frameborderLink","1",vframeborder);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement02-expected.txt
new file mode 100644
index 0000000..2e6b52d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement02.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement02.html
new file mode 100644
index 0000000..f9ffa7d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement02.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement02.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement02.js
new file mode 100644
index 0000000..0540a7c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The longDesc attribute specifies a URI designating a long description
+ of this image or frame.
+
+ Retrieve the longDesc attribute of the first FRAME element and examine
+ its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7836998
+*/
+function HTMLFrameElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vlongdesc;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame");
+ nodeList = doc.getElementsByTagName("frame");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vlongdesc = testNode.longDesc;
+
+ assertEquals("longdescLink","about:blank",vlongdesc);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement03-expected.txt
new file mode 100644
index 0000000..97ce1fc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement03.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement03.html
new file mode 100644
index 0000000..4b008a1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement03.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement03.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement03.js
new file mode 100644
index 0000000..23cbc62
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The marginHeight attribute specifies the frame margin height, in pixels.
+
+ Retrieve the marginHeight attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-55569778
+*/
+function HTMLFrameElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vmarginheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame");
+ nodeList = doc.getElementsByTagName("frame");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vmarginheight = testNode.marginHeight;
+
+ assertEquals("marginheightLink","10",vmarginheight);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement04-expected.txt
new file mode 100644
index 0000000..10a9fd8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement04.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement04.html
new file mode 100644
index 0000000..7a691f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement04.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement04.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement04.js
new file mode 100644
index 0000000..5d84e93
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The marginWidth attribute specifies the frame margin width, in pixels.
+
+ Retrieve the marginWidth attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8369969
+*/
+function HTMLFrameElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vmarginwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame");
+ nodeList = doc.getElementsByTagName("frame");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vmarginwidth = testNode.marginWidth;
+
+ assertEquals("marginwidthLink","5",vmarginwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement05-expected.txt
new file mode 100644
index 0000000..0d80e36
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement05.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement05.html
new file mode 100644
index 0000000..c810297
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement05.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement05.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement05.js
new file mode 100644
index 0000000..32cd2ee
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement05.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies the frame name(object of the target
+ attribute).
+
+ Retrieve the name attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91128709
+*/
+function HTMLFrameElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame");
+ nodeList = doc.getElementsByTagName("frame");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","Frame1",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement06-expected.txt
new file mode 100644
index 0000000..defba6f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement06.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement06.html
new file mode 100644
index 0000000..fb72463
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement06.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement06.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement06.js
new file mode 100644
index 0000000..4013b1e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The noResize attribute specifies if the user can resize the frame. When
+ true, forbid user from resizing frame.
+
+ Retrieve the noResize attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80766578
+*/
+function HTMLFrameElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vnoresize;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame");
+ nodeList = doc.getElementsByTagName("frame");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vnoresize = testNode.noResize;
+
+ assertTrue("noresizeLink",vnoresize);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement07-expected.txt
new file mode 100644
index 0000000..e22e634
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement07.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement07.html
new file mode 100644
index 0000000..c373b07
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement07.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement07.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement07.js
new file mode 100644
index 0000000..c46349b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The scrolling attribute specifies whether or not the frame should have
+ scrollbars.
+
+ Retrieve the scrolling attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-45411424
+*/
+function HTMLFrameElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vscrolling;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame");
+ nodeList = doc.getElementsByTagName("frame");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vscrolling = testNode.scrolling;
+
+ assertEquals("scrollingLink","yes",vscrolling);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement08-expected.txt
new file mode 100644
index 0000000..045cff0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement08.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement08.html
new file mode 100644
index 0000000..1559917
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement08.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement08.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement08.js
new file mode 100644
index 0000000..ef73f8d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement08.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The src attribute specifies a URI designating the initial frame contents.
+
+ Retrieve the src attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78799535
+*/
+function HTMLFrameElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vsrc;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame");
+ nodeList = doc.getElementsByTagName("frame");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vsrc = testNode.src;
+
+ assertURIEquals("srcLink",null,null,null,null,"right",null,null,null,vsrc);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameElement09-expected.txt
new file mode 100644
index 0000000..ad5e635
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement09.html b/LayoutTests/dom/html/level2/html/HTMLFrameElement09.html
new file mode 100644
index 0000000..0f63d45
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement09.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAME2</TITLE>
+<!-- required by frame contents -->
+<SCRIPT type="text/javascript">function loadComplete() { }</SCRIPT>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME ID="Frame1" NAME="Frame1" SRC="resources/frame.html">
+</FRAMESET>
+<FRAME ID="Frame2" NAME="Frame2" SRC="resources/iframe.html">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameElement09.js b/LayoutTests/dom/html/level2/html/HTMLFrameElement09.js
new file mode 100644
index 0000000..a5b7dd0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameElement09.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frame2");
+
+ if (docsLoaded == 1) {
+ // WebKit fix: corrected variable name from 'setUpPage':
+ // <http://bugs.webkit.org/show_bug.cgi?id=21506>
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ // WebKit fix: corrected variable name from 'setUpPage':
+ // <http://bugs.webkit.org/show_bug.cgi?id=21506>
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The contentDocument attribute specifies the document this frame contains,
+ if there is any and it is available, or null otherwise.
+
+ Retrieve the contentDocument attribute of the first FRAME element
+ and examine its TITLE value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-78799536
+*/
+function HTMLFrameElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameElement09") != null) return;
+ var testNode;
+ var cd;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frame2");
+ testNode = doc.getElementById("Frame1");
+ cd = testNode.contentDocument;
+
+ vtitle = cd.title;
+
+ assertEquals("titleLink","NIST DOM HTML Test - FRAMESET",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01-expected.txt
new file mode 100644
index 0000000..981bcdf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameSetElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01.html b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01.html
new file mode 100644
index 0000000..0c09545
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAMESET</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameSetElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01.js b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01.js
new file mode 100644
index 0000000..7ab3af0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement01.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameSetElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frameset");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cols attribute specifies the number of columns of frames in the
+ frameset.
+
+ Retrieve the cols attribute of the first FRAMESET element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98869594
+*/
+function HTMLFrameSetElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameSetElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcols;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frameset");
+ nodeList = doc.getElementsByTagName("frameset");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vcols = testNode.cols;
+
+ assertEquals("colsLink","20, 80",vcols);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameSetElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02-expected.txt
new file mode 100644
index 0000000..2e59dfe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameSetElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02.html b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02.html
new file mode 100644
index 0000000..0108b89
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAMESET</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLFrameSetElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<FRAMESET COLS="20, 80" onload="loadComplete()">
+<FRAMESET ROWS="100, 200">
+<FRAME SRC="right.png">
+</FRAMESET>
+<FRAME SRC="w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02.js b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02.js
new file mode 100644
index 0000000..60e8563
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLFrameSetElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameSetElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "frameset");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rows attribute specifies the number of rows of frames in the
+ frameset.
+
+ Retrieve the rows attribute of the second FRAMESET element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19739247
+*/
+function HTMLFrameSetElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLFrameSetElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "frameset");
+ nodeList = doc.getElementsByTagName("frameset");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vrows = testNode.rows;
+
+ assertEquals("rowsLink","100, 200",vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLFrameSetElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHRElement01-expected.txt
new file mode 100644
index 0000000..d9efa72
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement01.html b/LayoutTests/dom/html/level2/html/HTMLHRElement01.html
new file mode 100644
index 0000000..a3b17c2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement01.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HR</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHRElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<HR ALIGN="center" NOSHADE="noShade" SIZE="5" WIDTH="400" />
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement01.js b/LayoutTests/dom/html/level2/html/HTMLHRElement01.js
new file mode 100644
index 0000000..a7a4bc8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hr");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the rule alignment on the page.
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15235012
+*/
+function HTMLHRElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLHRElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hr");
+ nodeList = doc.getElementsByTagName("hr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHRElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHRElement02-expected.txt
new file mode 100644
index 0000000..5e694ca
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement02.html b/LayoutTests/dom/html/level2/html/HTMLHRElement02.html
new file mode 100644
index 0000000..12c8733
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement02.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HR</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHRElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<HR ALIGN="center" NOSHADE="noShade" SIZE="5" WIDTH="400" />
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement02.js b/LayoutTests/dom/html/level2/html/HTMLHRElement02.js
new file mode 100644
index 0000000..8c35b75
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hr");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The noShade attribute specifies that the rule should be drawn as
+ a solid color.
+
+ Retrieve the noShade attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79813978
+*/
+function HTMLHRElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLHRElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vnoshade;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hr");
+ nodeList = doc.getElementsByTagName("hr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vnoshade = testNode.noShade;
+
+ assertTrue("noShadeLink",vnoshade);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHRElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHRElement03-expected.txt
new file mode 100644
index 0000000..955cf35
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement03.html b/LayoutTests/dom/html/level2/html/HTMLHRElement03.html
new file mode 100644
index 0000000..20ae820
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement03.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HR</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHRElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<HR ALIGN="center" NOSHADE="noShade" SIZE="5" WIDTH="400" />
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement03.js b/LayoutTests/dom/html/level2/html/HTMLHRElement03.js
new file mode 100644
index 0000000..50a3ed2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hr");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The size attribute specifies the height of the rule.
+
+ Retrieve the size attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77612587
+*/
+function HTMLHRElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLHRElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vsize;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hr");
+ nodeList = doc.getElementsByTagName("hr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vsize = testNode.size;
+
+ assertEquals("sizeLink","5",vsize);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHRElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHRElement04-expected.txt
new file mode 100644
index 0000000..909bc0a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement04.html b/LayoutTests/dom/html/level2/html/HTMLHRElement04.html
new file mode 100644
index 0000000..9d4b76f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement04.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HR</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHRElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<HR ALIGN="center" NOSHADE="noShade" SIZE="5" WIDTH="400" />
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHRElement04.js b/LayoutTests/dom/html/level2/html/HTMLHRElement04.js
new file mode 100644
index 0000000..4dcd715
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHRElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "hr");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute specifies the width of the rule.
+
+ Retrieve the width attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87744198
+*/
+function HTMLHRElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLHRElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "hr");
+ nodeList = doc.getElementsByTagName("hr");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","400",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHRElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHeadElement01-expected.txt
new file mode 100644
index 0000000..b5e8271
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadElement01.html b/LayoutTests/dom/html/level2/html/HTMLHeadElement01.html
new file mode 100644
index 0000000..7724770
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadElement01.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD PROFILE="http://xw2k.sdct.itl.nist.gov/brady/dom/files/profile">
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEAD</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHeadElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>Hello, World.</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadElement01.js b/LayoutTests/dom/html/level2/html/HTMLHeadElement01.js
new file mode 100644
index 0000000..459de49
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "head");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The profile attribute specifies a URI designating a metadata profile.
+
+ Retrieve the profile attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96921909
+*/
+function HTMLHeadElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLHeadElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vprofile;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "head");
+ nodeList = doc.getElementsByTagName("head");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vprofile = testNode.profile;
+
+ assertURIEquals("profileLink",null,null,null,"profile",null,null,null,null,vprofile);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHeadElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHeadingElement01-expected.txt
new file mode 100644
index 0000000..7de84d1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement01.html b/LayoutTests/dom/html/level2/html/HTMLHeadingElement01.html
new file mode 100644
index 0000000..a981d64
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement01.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEADING</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHeadingElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<H1 ALIGN="center">Head Element 1</H1>
+<H2 ALIGN="left">Head Element 2</H2>
+<H3 ALIGN="right">Head Element 3</H3>
+<H4 ALIGN="justify">Head Element 4</H4>
+<H5 ALIGN="center">Head Element 5</H5>
+<H6 ALIGN="left">Head Element 6</H6>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement01.js b/LayoutTests/dom/html/level2/html/HTMLHeadingElement01.js
new file mode 100644
index 0000000..f3c8b9e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "heading");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal text alignment(H1).
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462
+*/
+function HTMLHeadingElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLHeadingElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "heading");
+ nodeList = doc.getElementsByTagName("h1");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHeadingElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHeadingElement02-expected.txt
new file mode 100644
index 0000000..3be5278
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement02.html b/LayoutTests/dom/html/level2/html/HTMLHeadingElement02.html
new file mode 100644
index 0000000..74af8f2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement02.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEADING</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHeadingElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<H1 ALIGN="center">Head Element 1</H1>
+<H2 ALIGN="left">Head Element 2</H2>
+<H3 ALIGN="right">Head Element 3</H3>
+<H4 ALIGN="justify">Head Element 4</H4>
+<H5 ALIGN="center">Head Element 5</H5>
+<H6 ALIGN="left">Head Element 6</H6>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement02.js b/LayoutTests/dom/html/level2/html/HTMLHeadingElement02.js
new file mode 100644
index 0000000..b8f775c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "heading");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal text alignment(H2).
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462
+*/
+function HTMLHeadingElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLHeadingElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "heading");
+ nodeList = doc.getElementsByTagName("h2");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","left",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHeadingElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHeadingElement03-expected.txt
new file mode 100644
index 0000000..eae9f73
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement03.html b/LayoutTests/dom/html/level2/html/HTMLHeadingElement03.html
new file mode 100644
index 0000000..97cb3ad
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement03.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEADING</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHeadingElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<H1 ALIGN="center">Head Element 1</H1>
+<H2 ALIGN="left">Head Element 2</H2>
+<H3 ALIGN="right">Head Element 3</H3>
+<H4 ALIGN="justify">Head Element 4</H4>
+<H5 ALIGN="center">Head Element 5</H5>
+<H6 ALIGN="left">Head Element 6</H6>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement03.js b/LayoutTests/dom/html/level2/html/HTMLHeadingElement03.js
new file mode 100644
index 0000000..9578fbd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "heading");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal text alignment(H3).
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462
+*/
+function HTMLHeadingElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLHeadingElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "heading");
+ nodeList = doc.getElementsByTagName("h3");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","right",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHeadingElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHeadingElement04-expected.txt
new file mode 100644
index 0000000..34f2bff
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement04.html b/LayoutTests/dom/html/level2/html/HTMLHeadingElement04.html
new file mode 100644
index 0000000..92cec38
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement04.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEADING</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHeadingElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<H1 ALIGN="center">Head Element 1</H1>
+<H2 ALIGN="left">Head Element 2</H2>
+<H3 ALIGN="right">Head Element 3</H3>
+<H4 ALIGN="justify">Head Element 4</H4>
+<H5 ALIGN="center">Head Element 5</H5>
+<H6 ALIGN="left">Head Element 6</H6>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement04.js b/LayoutTests/dom/html/level2/html/HTMLHeadingElement04.js
new file mode 100644
index 0000000..bd3739f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "heading");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal text alignment(H4).
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462
+*/
+function HTMLHeadingElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLHeadingElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "heading");
+ nodeList = doc.getElementsByTagName("h4");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","justify",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHeadingElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHeadingElement05-expected.txt
new file mode 100644
index 0000000..f575f70
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement05.html b/LayoutTests/dom/html/level2/html/HTMLHeadingElement05.html
new file mode 100644
index 0000000..254c28d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement05.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEADING</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHeadingElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<H1 ALIGN="center">Head Element 1</H1>
+<H2 ALIGN="left">Head Element 2</H2>
+<H3 ALIGN="right">Head Element 3</H3>
+<H4 ALIGN="justify">Head Element 4</H4>
+<H5 ALIGN="center">Head Element 5</H5>
+<H6 ALIGN="left">Head Element 6</H6>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement05.js b/LayoutTests/dom/html/level2/html/HTMLHeadingElement05.js
new file mode 100644
index 0000000..930942e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "heading");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal text alignment(H5).
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462
+*/
+function HTMLHeadingElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLHeadingElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "heading");
+ nodeList = doc.getElementsByTagName("h5");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHeadingElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHeadingElement06-expected.txt
new file mode 100644
index 0000000..fca9392
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement06.html b/LayoutTests/dom/html/level2/html/HTMLHeadingElement06.html
new file mode 100644
index 0000000..4d90659
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement06.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - HEADING</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHeadingElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<H1 ALIGN="center">Head Element 1</H1>
+<H2 ALIGN="left">Head Element 2</H2>
+<H3 ALIGN="right">Head Element 3</H3>
+<H4 ALIGN="justify">Head Element 4</H4>
+<H5 ALIGN="center">Head Element 5</H5>
+<H6 ALIGN="left">Head Element 6</H6>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHeadingElement06.js b/LayoutTests/dom/html/level2/html/HTMLHeadingElement06.js
new file mode 100644
index 0000000..7e65e64
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHeadingElement06.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "heading");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal text alignment(H6).
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462
+*/
+function HTMLHeadingElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLHeadingElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "heading");
+ nodeList = doc.getElementsByTagName("h6");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","left",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLHeadingElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLHtmlElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLHtmlElement01-expected.txt
new file mode 100644
index 0000000..b5a92b0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHtmlElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHtmlElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLHtmlElement01.html b/LayoutTests/dom/html/level2/html/HTMLHtmlElement01.html
new file mode 100644
index 0000000..94e0f5a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHtmlElement01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML VERSION="-//W3C//DTD HTML 4.01 Transitional//EN">
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Html</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLHtmlElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>Hello, World.</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLHtmlElement01.js b/LayoutTests/dom/html/level2/html/HTMLHtmlElement01.js
new file mode 100644
index 0000000..fb7947d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLHtmlElement01.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHtmlElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "html");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The version attribute specifies version information about the document's
+ DTD.
+
+ Retrieve the version attribute and examine its value.
+
+ Test is only applicable to HTML, version attribute is not supported in XHTML.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9383775
+*/
+function HTMLHtmlElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLHtmlElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vversion;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "html");
+ nodeList = doc.getElementsByTagName("html");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vversion = testNode.version;
+
+
+ if(
+
+ (builder.contentType == "text/html")
+
+ ) {
+ assertEquals("versionLink","-//W3C//DTD HTML 4.01 Transitional//EN",vversion);
+
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLHtmlElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement01-expected.txt
new file mode 100644
index 0000000..bbd596a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement01.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement01.html
new file mode 100644
index 0000000..42fdb53
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement01.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement01.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement01.js
new file mode 100644
index 0000000..41bca6b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement01.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute aligns this object(vertically or horizontally with
+ respect to its surrounding text.
+
+ Retrieve the align attribute of the first IFRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11309947
+*/
+function HTMLIFrameElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","top",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement02-expected.txt
new file mode 100644
index 0000000..a4fb671
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement02.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement02.html
new file mode 100644
index 0000000..2dc9c3a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement02.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement02.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement02.js
new file mode 100644
index 0000000..dd5ce3a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement02.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The frameBorder attribute specifies the request for frame borders.
+ (frameBorder=1 A border is drawn)
+ (FrameBorder=0 A border is not drawn)
+
+ Retrieve the frameBorder attribute of the first IFRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22463410
+*/
+function HTMLIFrameElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vframeborder;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vframeborder = testNode.frameBorder;
+
+ assertEquals("frameborderLink","1",vframeborder);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement03-expected.txt
new file mode 100644
index 0000000..73043f4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement03.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement03.html
new file mode 100644
index 0000000..0980ca8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement03.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement03.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement03.js
new file mode 100644
index 0000000..705a463
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The height attribute specifies the frame height.
+
+ Retrieve the height attribute of the first IFRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-1678118
+*/
+function HTMLIFrameElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vheight = testNode.height;
+
+ assertEquals("heightLink","50",vheight);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement04-expected.txt
new file mode 100644
index 0000000..77d5ec0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement04.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement04.html
new file mode 100644
index 0000000..643516b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement04.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement04.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement04.js
new file mode 100644
index 0000000..9782379
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The longDesc attribute specifies a URI designating a long description
+ of this image or frame.
+
+ Retrieve the longDesc attribute of the first IFRAME element and examine
+ its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70472105
+*/
+function HTMLIFrameElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vlongdesc;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlongdesc = testNode.longDesc;
+
+ assertEquals("longdescLink","about:blank",vlongdesc);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement05-expected.txt
new file mode 100644
index 0000000..6239e07
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement05.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement05.html
new file mode 100644
index 0000000..b5b6620
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement05.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement05.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement05.js
new file mode 100644
index 0000000..4bf457c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement05.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The marginWidth attribute specifies the frame margin width, in pixels.
+
+ Retrieve the marginWidth attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66486595
+*/
+function HTMLIFrameElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vmarginwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vmarginwidth = testNode.marginWidth;
+
+ assertEquals("marginwidthLink","5",vmarginwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement06-expected.txt
new file mode 100644
index 0000000..2c83f15
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement06.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement06.html
new file mode 100644
index 0000000..110d9d1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement06.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement06.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement06.js
new file mode 100644
index 0000000..5f7320b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement06.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The marginHeight attribute specifies the frame margin height, in pixels.
+
+ Retrieve the marginHeight attribute of the first IFRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91371294
+*/
+function HTMLIFrameElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vmarginheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vmarginheight = testNode.marginHeight;
+
+ assertEquals("marginheightLink","10",vmarginheight);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement07-expected.txt
new file mode 100644
index 0000000..c8a6f8c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement07.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement07.html
new file mode 100644
index 0000000..3f1ccc2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement07.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement07.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement07.js
new file mode 100644
index 0000000..67886db
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies the frame name(object of the target
+ attribute).
+
+ Retrieve the name attribute of the first IFRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96819659
+*/
+function HTMLIFrameElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","Iframe1",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement08-expected.txt
new file mode 100644
index 0000000..da4fa57
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement08.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement08.html
new file mode 100644
index 0000000..a9dda56
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement08.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement08.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement08.js
new file mode 100644
index 0000000..05cda81
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement08.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The scrolling attribute specifies whether or not the frame should have
+ scrollbars.
+
+ Retrieve the scrolling attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36369822
+*/
+function HTMLIFrameElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vscrolling;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vscrolling = testNode.scrolling;
+
+ assertEquals("scrollingLink","yes",vscrolling);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement09-expected.txt
new file mode 100644
index 0000000..d0e1ff0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement09.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement09.html
new file mode 100644
index 0000000..df4bc99
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement09.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement09.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement09.js
new file mode 100644
index 0000000..595f87f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement09.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The src attribute specifies a URI designating the initial frame contents.
+
+ Retrieve the src attribute of the first FRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-43933957
+*/
+function HTMLIFrameElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vsrc;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vsrc = testNode.src;
+
+ assertURIEquals("srcLink",null,null,null,null,"right",null,null,null,vsrc);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement10-expected.txt
new file mode 100644
index 0000000..ccc72b8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement10.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement10.html
new file mode 100644
index 0000000..79da3c6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement10.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement10.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement10.js
new file mode 100644
index 0000000..8cf06c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement10.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute specifies the frame width.
+
+ Retrieve the width attribute of the first IFRAME element and examine
+ it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67133005
+*/
+function HTMLIFrameElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe");
+ nodeList = doc.getElementsByTagName("iframe");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","60",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIFrameElement11-expected.txt
new file mode 100644
index 0000000..af5a81c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement11.html b/LayoutTests/dom/html/level2/html/HTMLIFrameElement11.html
new file mode 100644
index 0000000..d401e52
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement11.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME2</TITLE>
+<!-- required by frame contents -->
+<SCRIPT type="text/javascript">function loadComplete() { }</SCRIPT>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIFrameElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<IFRAME ID="Iframe1" NAME="Iframe1" SRC="resources/iframe.html">IFRAME1</IFRAME>
+<IFRAME ID="Iframe2" SRC="resources/frame.html" NAME="Iframe2">IFRAME2</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLIFrameElement11.js b/LayoutTests/dom/html/level2/html/HTMLIFrameElement11.js
new file mode 100644
index 0000000..d239fcd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIFrameElement11.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "iframe2");
+
+ if (docsLoaded == 1) {
+ // WebKit fix: corrected variable name from 'setUpPage':
+ // <http://bugs.webkit.org/show_bug.cgi?id=21506>
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ // WebKit fix: corrected variable name from 'setUpPage':
+ // <http://bugs.webkit.org/show_bug.cgi?id=21506>
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ Retrieve the contentDocument attribute of the second IFRAME element
+ and examine its title.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-67133006
+*/
+function HTMLIFrameElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLIFrameElement11") != null) return;
+ var testNode;
+ var cd;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "iframe2");
+ testNode = doc.getElementById("Iframe2");
+ cd = testNode.contentDocument;
+
+ vtitle = cd.title;
+
+ assertEquals("titleLink","NIST DOM HTML Test - FRAMESET",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIFrameElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement01-expected.txt
new file mode 100644
index 0000000..c24eb4e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement01.html b/LayoutTests/dom/html/level2/html/HTMLImageElement01.html
new file mode 100644
index 0000000..d9578ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement01.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement01.js b/LayoutTests/dom/html/level2/html/HTMLImageElement01.js
new file mode 100644
index 0000000..079c901
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies the name of the element.
+
+ Retrieve the name attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47534097
+*/
+function HTMLImageElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","IMAGE-1",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement02-expected.txt
new file mode 100644
index 0000000..68d56a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement02.html b/LayoutTests/dom/html/level2/html/HTMLImageElement02.html
new file mode 100644
index 0000000..c7decb3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement02.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement02.js b/LayoutTests/dom/html/level2/html/HTMLImageElement02.js
new file mode 100644
index 0000000..29df0b9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute aligns this object with respect to its surrounding
+ text.
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-3211094
+*/
+function HTMLImageElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","middle",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement03-expected.txt
new file mode 100644
index 0000000..bdf376e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement03.html b/LayoutTests/dom/html/level2/html/HTMLImageElement03.html
new file mode 100644
index 0000000..31fee9e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement03.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement03.js b/LayoutTests/dom/html/level2/html/HTMLImageElement03.js
new file mode 100644
index 0000000..c6f6f50
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The alt attribute specifies an alternative text for user agenst not
+ rendering the normal content of this element.
+
+ Retrieve the alt attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95636861
+*/
+function HTMLImageElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var valt;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valt = testNode.alt;
+
+ assertEquals("altLink","DTS IMAGE LOGO",valt);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement04-expected.txt
new file mode 100644
index 0000000..f766c35
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement04.html b/LayoutTests/dom/html/level2/html/HTMLImageElement04.html
new file mode 100644
index 0000000..38b648f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement04.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement04.js b/LayoutTests/dom/html/level2/html/HTMLImageElement04.js
new file mode 100644
index 0000000..b6a9a3f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The border attribute specifies the width of the border around the image.
+
+ Retrieve the border attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-136671
+*/
+function HTMLImageElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vborder;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vborder = testNode.border;
+
+ assertEquals("borderLink","0",vborder);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement05-expected.txt
new file mode 100644
index 0000000..dccf1ce
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement05.html b/LayoutTests/dom/html/level2/html/HTMLImageElement05.html
new file mode 100644
index 0000000..482135b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement05.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement05.js b/LayoutTests/dom/html/level2/html/HTMLImageElement05.js
new file mode 100644
index 0000000..3114110
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The height attribute overrides the natural "height" of the image.
+
+ Retrieve the height attribute and examine it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-91561496
+*/
+function HTMLImageElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vheight = testNode.height;
+
+ assertEquals("heightLink",47,vheight);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement06-expected.txt
new file mode 100644
index 0000000..dd1c64d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement06.html b/LayoutTests/dom/html/level2/html/HTMLImageElement06.html
new file mode 100644
index 0000000..406a5c5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement06.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement06.js b/LayoutTests/dom/html/level2/html/HTMLImageElement06.js
new file mode 100644
index 0000000..cb5ae85
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement06.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The hspace attribute specifies the horizontal space to the left and
+ right of this image.
+
+ Retrieve the hspace attribute and examine it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-53675471
+*/
+function HTMLImageElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vhspace;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vhspace = testNode.hspace;
+
+ assertEquals("hspaceLink",4,vhspace);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement07-expected.txt
new file mode 100644
index 0000000..f7fe57b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement07.html b/LayoutTests/dom/html/level2/html/HTMLImageElement07.html
new file mode 100644
index 0000000..0406746
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement07.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement07.js b/LayoutTests/dom/html/level2/html/HTMLImageElement07.js
new file mode 100644
index 0000000..fd200a1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement07.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The isMap attribute indicates the use of server-side image map.
+
+ Retrieve the isMap attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58983880
+*/
+function HTMLImageElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vismap;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vismap = testNode.isMap;
+
+ assertFalse("isMapLink",vismap);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement08-expected.txt
new file mode 100644
index 0000000..fd3e1bf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement08.html b/LayoutTests/dom/html/level2/html/HTMLImageElement08.html
new file mode 100644
index 0000000..07fe955
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement08.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement08.js b/LayoutTests/dom/html/level2/html/HTMLImageElement08.js
new file mode 100644
index 0000000..ab37f44
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement08.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The longDesc attribute contains an URI designating a long description
+ of this image or frame.
+
+ Retrieve the longDesc attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77376969
+*/
+function HTMLImageElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vlongdesc;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vlongdesc = testNode.longDesc;
+
+ assertURIEquals("longDescLink",null,null,null,"desc.html",null,null,null,null,vlongdesc);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement09-expected.txt
new file mode 100644
index 0000000..28320b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement09.html b/LayoutTests/dom/html/level2/html/HTMLImageElement09.html
new file mode 100644
index 0000000..daa36e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement09.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement09.js b/LayoutTests/dom/html/level2/html/HTMLImageElement09.js
new file mode 100644
index 0000000..2946f1a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement09.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The src attribute contains an URI designating the source of this image.
+
+ Retrieve the src attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87762984
+*/
+function HTMLImageElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vsrc;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vsrc = testNode.src;
+
+ assertURIEquals("srcLink",null,null,null,"dts.gif",null,null,null,null,vsrc);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement10-expected.txt
new file mode 100644
index 0000000..ae9510e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement10.html b/LayoutTests/dom/html/level2/html/HTMLImageElement10.html
new file mode 100644
index 0000000..444583b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement10.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement10.js b/LayoutTests/dom/html/level2/html/HTMLImageElement10.js
new file mode 100644
index 0000000..d127aa7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement10.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The useMap attribute specifies to use the client-side image map.
+
+ Retrieve the useMap attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35981181
+*/
+function HTMLImageElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vusemap;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vusemap = testNode.useMap;
+
+ assertEquals("useMapLink","#DTS-MAP",vusemap);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement11-expected.txt
new file mode 100644
index 0000000..6e0cc01
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement11.html b/LayoutTests/dom/html/level2/html/HTMLImageElement11.html
new file mode 100644
index 0000000..3f0934a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement11.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement11.js b/LayoutTests/dom/html/level2/html/HTMLImageElement11.js
new file mode 100644
index 0000000..37ec666
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement11.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vspace attribute specifies the vertical space above and below this
+ image.
+
+ Retrieve the vspace attribute and examine it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-85374897
+*/
+function HTMLImageElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vvspace;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvspace = testNode.vspace;
+
+ assertEquals("vspaceLink",10,vvspace);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLImageElement12-expected.txt
new file mode 100644
index 0000000..ce59054
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement12.html b/LayoutTests/dom/html/level2/html/HTMLImageElement12.html
new file mode 100644
index 0000000..fb3e8b9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement12.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IMG</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLImageElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif" ALIGN="middle" ALT="DTS IMAGE LOGO" BORDER="0" HEIGHT="47" HSPACE="4" LONGDESC="./files/desc.html" USEMAP="#DTS-MAP" VSPACE="10" WIDTH="115"/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLImageElement12.js b/LayoutTests/dom/html/level2/html/HTMLImageElement12.js
new file mode 100644
index 0000000..ef6dfad
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLImageElement12.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "img");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute overrides the natural "width" of the image.
+
+ Retrieve the width attribute and examine it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13839076
+*/
+function HTMLImageElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLImageElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "img");
+ nodeList = doc.getElementsByTagName("img");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink",115,vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLImageElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement01-expected.txt
new file mode 100644
index 0000000..5026720
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement01.html b/LayoutTests/dom/html/level2/html/HTMLInputElement01.html
new file mode 100644
index 0000000..d3fe30c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement01.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement01.js b/LayoutTests/dom/html/level2/html/HTMLInputElement01.js
new file mode 100644
index 0000000..2193d6b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement01.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The defaultValue attribute represents the HTML value of the attribute
+ when the type attribute has the value of "Text", "File" or "Password".
+
+ Retrieve the defaultValue attribute of the 1st INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26091157
+*/
+function HTMLInputElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vdefaultvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ vdefaultvalue = testNode.defaultValue;
+
+ assertEquals("defaultValueLink","Password",vdefaultvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement02-expected.txt
new file mode 100644
index 0000000..c8c956e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement02.html b/LayoutTests/dom/html/level2/html/HTMLInputElement02.html
new file mode 100644
index 0000000..223fbba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement02.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement02.js b/LayoutTests/dom/html/level2/html/HTMLInputElement02.js
new file mode 100644
index 0000000..bbc23ea
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The defaultChecked attribute represents the HTML checked attribute of
+ the element when the type attribute has the value checkbox or radio.
+
+ Retrieve the defaultValue attribute of the 4th INPUT element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20509171
+*/
+function HTMLInputElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vdefaultchecked;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(3);
+ vdefaultchecked = testNode.defaultChecked;
+
+ assertTrue("defaultCheckedLink",vdefaultchecked);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement03-expected.txt
new file mode 100644
index 0000000..ed9c9ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement03.html b/LayoutTests/dom/html/level2/html/HTMLInputElement03.html
new file mode 100644
index 0000000..b00df72
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement03.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement03.js b/LayoutTests/dom/html/level2/html/HTMLInputElement03.js
new file mode 100644
index 0000000..fd306b4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement03.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute of the 1st INPUT element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63239895
+*/
+function HTMLInputElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var fNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("formLink","form1",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement04-expected.txt
new file mode 100644
index 0000000..9a60f51
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement04.html b/LayoutTests/dom/html/level2/html/HTMLInputElement04.html
new file mode 100644
index 0000000..6260eee
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement04.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement04.js b/LayoutTests/dom/html/level2/html/HTMLInputElement04.js
new file mode 100644
index 0000000..17568da
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The accept attribute is a comma-seperated list of content types that
+ a server processing this form will handle correctly.
+
+ Retrieve the accept attribute of the 9th INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15328520
+*/
+function HTMLInputElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccept;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(8);
+ vaccept = testNode.accept;
+
+ assertEquals("acceptLink","GIF,JPEG",vaccept);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement05-expected.txt
new file mode 100644
index 0000000..ca4d617
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement05.html b/LayoutTests/dom/html/level2/html/HTMLInputElement05.html
new file mode 100644
index 0000000..36b2acb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement05.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement05.js b/LayoutTests/dom/html/level2/html/HTMLInputElement05.js
new file mode 100644
index 0000000..eed2b75
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement05.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The accessKey attribute is a single character access key to give access
+ to the form control.
+
+ Retrieve the accessKey attribute of the 2nd INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59914154
+*/
+function HTMLInputElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(1);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("accesskeyLink","c",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement06-expected.txt
new file mode 100644
index 0000000..a8940aa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement06.html b/LayoutTests/dom/html/level2/html/HTMLInputElement06.html
new file mode 100644
index 0000000..a698a39
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement06.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement06.js b/LayoutTests/dom/html/level2/html/HTMLInputElement06.js
new file mode 100644
index 0000000..23ca243
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute aligns this object(vertically or horizontally)
+ with respect to the surrounding text.
+
+ Retrieve the align attribute of the 4th INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96991182
+*/
+function HTMLInputElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(3);
+ valign = testNode.align;
+
+ assertEquals("alignLink","bottom".toLowerCase(),valign.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement07-expected.txt
new file mode 100644
index 0000000..674fd60
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement07.html b/LayoutTests/dom/html/level2/html/HTMLInputElement07.html
new file mode 100644
index 0000000..a671182
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement07.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement07.js b/LayoutTests/dom/html/level2/html/HTMLInputElement07.js
new file mode 100644
index 0000000..19a77f4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The alt attribute alternates text for user agents not rendering the
+ normal content of this element.
+
+ Retrieve the alt attribute of the 1st INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92701314
+*/
+function HTMLInputElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var valt;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ valt = testNode.alt;
+
+ assertEquals("altLink","Password entry",valt);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement08-expected.txt
new file mode 100644
index 0000000..6f178e3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement08.html b/LayoutTests/dom/html/level2/html/HTMLInputElement08.html
new file mode 100644
index 0000000..73db93a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement08.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement08.js b/LayoutTests/dom/html/level2/html/HTMLInputElement08.js
new file mode 100644
index 0000000..3df1bf3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement08.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The checked attribute represents the current state of the corresponding
+ form control when type has the value Radio or Checkbox.
+
+ Retrieve the accept attribute of the 3rd INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30233917
+*/
+function HTMLInputElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vchecked;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(2);
+ vchecked = testNode.checked;
+
+ assertTrue("checkedLink",vchecked);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement09-expected.txt
new file mode 100644
index 0000000..6211af7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement09.html b/LayoutTests/dom/html/level2/html/HTMLInputElement09.html
new file mode 100644
index 0000000..3746a23
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement09.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement09.js b/LayoutTests/dom/html/level2/html/HTMLInputElement09.js
new file mode 100644
index 0000000..c926a5b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement09.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The disabled attribute has a TRUE value if it is explicitly set.
+
+ Retrieve the disabled attribute of the 7th INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50886781
+*/
+function HTMLInputElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(6);
+ vdisabled = testNode.disabled;
+
+ assertTrue("disabledLink",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement10-expected.txt
new file mode 100644
index 0000000..36bdad3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement10.html b/LayoutTests/dom/html/level2/html/HTMLInputElement10.html
new file mode 100644
index 0000000..c164205
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement10.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement10.js b/LayoutTests/dom/html/level2/html/HTMLInputElement10.js
new file mode 100644
index 0000000..b722339
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The maxLength attribute is the maximum number of text characters for text
+ fields, when type has the value of Text or Password.
+
+ Retrieve the maxLenght attribute of the 1st INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-54719353
+*/
+function HTMLInputElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vmaxlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ vmaxlength = testNode.maxLength;
+
+ assertEquals("maxlengthLink",5,vmaxlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement11-expected.txt
new file mode 100644
index 0000000..bb4a94a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement11.html b/LayoutTests/dom/html/level2/html/HTMLInputElement11.html
new file mode 100644
index 0000000..bcbd660
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement11.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement11.js b/LayoutTests/dom/html/level2/html/HTMLInputElement11.js
new file mode 100644
index 0000000..09325fe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement11.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute is the form control or object name when submitted with
+ a form.
+
+ Retrieve the name attribute of the 1st INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89658498
+*/
+function HTMLInputElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","Password",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement12-expected.txt
new file mode 100644
index 0000000..ee4c91d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement12.html b/LayoutTests/dom/html/level2/html/HTMLInputElement12.html
new file mode 100644
index 0000000..83dd7b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement12.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement12.js b/LayoutTests/dom/html/level2/html/HTMLInputElement12.js
new file mode 100644
index 0000000..4467334
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement12.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The readOnly attribute indicates that this control is read-only when
+ type has a value of text or password only.
+
+ Retrieve the readOnly attribute of the 1st INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88461592
+*/
+function HTMLInputElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vreadonly;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ vreadonly = testNode.readOnly;
+
+ assertTrue("readonlyLink",vreadonly);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement13-expected.txt
new file mode 100644
index 0000000..82ad605
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement13.html b/LayoutTests/dom/html/level2/html/HTMLInputElement13.html
new file mode 100644
index 0000000..cf793cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement13.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement13.js b/LayoutTests/dom/html/level2/html/HTMLInputElement13.js
new file mode 100644
index 0000000..b28e814
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement13.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The size attribute contains the size information. Its precise meaning
+ is specific to each type of field.
+
+ Retrieve the size attribute of the 1st INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-79659438
+*/
+function HTMLInputElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement13") != null) return;
+ var nodeList;
+ var testNode;
+ var vsize;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ vsize = testNode.size;
+
+ assertEquals("size",25,vsize);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement14-expected.txt
new file mode 100644
index 0000000..202825b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement14.html b/LayoutTests/dom/html/level2/html/HTMLInputElement14.html
new file mode 100644
index 0000000..397cfa3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement14.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement14.js b/LayoutTests/dom/html/level2/html/HTMLInputElement14.js
new file mode 100644
index 0000000..91276ca
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement14.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The src attribute specifies the location of the image to decorate the
+ graphical submit button when the type has the value Image.
+
+ Retrieve the src attribute of the 8th INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-97320704
+*/
+function HTMLInputElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement14") != null) return;
+ var nodeList;
+ var testNode;
+ var vsrc;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(7);
+ vsrc = testNode.src;
+
+ assertURIEquals("srcLink",null,null,null,"submit.gif",null,null,null,null,vsrc);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement15-expected.txt
new file mode 100644
index 0000000..3be36e8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement15.html b/LayoutTests/dom/html/level2/html/HTMLInputElement15.html
new file mode 100644
index 0000000..4bd04bf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement15.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement15.js b/LayoutTests/dom/html/level2/html/HTMLInputElement15.js
new file mode 100644
index 0000000..5b3cd67
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement15.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tabIndex attribute is an index that represents the elements position
+ in the tabbing order.
+
+ Retrieve the tabIndex attribute of the 3rd INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62176355
+*/
+function HTMLInputElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement15") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(2);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabindexLink",9,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement16-expected.txt
new file mode 100644
index 0000000..0f535ac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement16.html b/LayoutTests/dom/html/level2/html/HTMLInputElement16.html
new file mode 100644
index 0000000..b1ebd20
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement16.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement16.js b/LayoutTests/dom/html/level2/html/HTMLInputElement16.js
new file mode 100644
index 0000000..1aed284
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement16.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute is the type of control created.
+
+ Retrieve the type attribute of the 1st INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62883744
+*/
+function HTMLInputElement16() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement16") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","password",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement17-expected.txt
new file mode 100644
index 0000000..114fbe5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement17.html b/LayoutTests/dom/html/level2/html/HTMLInputElement17.html
new file mode 100644
index 0000000..438deef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement17.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement17.js b/LayoutTests/dom/html/level2/html/HTMLInputElement17.js
new file mode 100644
index 0000000..248f3cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement17.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The useMap attribute specifies the use of the client-side image map.
+
+ Retrieve the useMap attribute of the 8th INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32463706
+*/
+function HTMLInputElement17() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement17") != null) return;
+ var nodeList;
+ var testNode;
+ var vusemap;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(7);
+ vusemap = testNode.useMap;
+
+ assertEquals("usemapLink","#submit-map",vusemap);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement18-expected.txt
new file mode 100644
index 0000000..306ee57
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement18.html b/LayoutTests/dom/html/level2/html/HTMLInputElement18.html
new file mode 100644
index 0000000..0f829e4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement18.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement18.js b/LayoutTests/dom/html/level2/html/HTMLInputElement18.js
new file mode 100644
index 0000000..f339ef6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement18.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The value attribute is the current content of the corresponding form
+ control when the type attribute has the value Text, File or Password.
+
+ Retrieve the value attribute of the 2nd INPUT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49531485
+*/
+function HTMLInputElement18() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement18") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(1);
+ vvalue = testNode.value;
+
+ assertEquals("valueLink","ReHire",vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement19-expected.txt
new file mode 100644
index 0000000..86eb827
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement19.html b/LayoutTests/dom/html/level2/html/HTMLInputElement19.html
new file mode 100644
index 0000000..2a68b33
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement19.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement19.js b/LayoutTests/dom/html/level2/html/HTMLInputElement19.js
new file mode 100644
index 0000000..ab815af
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement19.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+HTMLInputElement.blur should surrender input focus.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26838235
+*/
+function HTMLInputElement19() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement19") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(1);
+ testNode.blur();
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement20-expected.txt
new file mode 100644
index 0000000..f7bf1dc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement20.html b/LayoutTests/dom/html/level2/html/HTMLInputElement20.html
new file mode 100644
index 0000000..ca133c0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement20.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement20.js b/LayoutTests/dom/html/level2/html/HTMLInputElement20.js
new file mode 100644
index 0000000..4054743
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement20.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+HTMLInputElement.focus should capture input focus.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65996295
+*/
+function HTMLInputElement20() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement20") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(1);
+ testNode.focus();
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement21-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement21-expected.txt
new file mode 100644
index 0000000..1e96a33
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement21-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement21
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement21.html b/LayoutTests/dom/html/level2/html/HTMLInputElement21.html
new file mode 100644
index 0000000..b34d982
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement21.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement21.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement21.js b/LayoutTests/dom/html/level2/html/HTMLInputElement21.js
new file mode 100644
index 0000000..5c75f53
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement21.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement21";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+HTMLInputElement.click should change the state of checked on a radio button.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-2651361
+*/
+function HTMLInputElement21() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement21") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+ var checked;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(1);
+ checked = testNode.checked;
+
+ assertFalse("notCheckedBeforeClick",checked);
+testNode.click();
+ checked = testNode.checked;
+
+ assertTrue("checkedAfterClick",checked);
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement21();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement22-expected.txt b/LayoutTests/dom/html/level2/html/HTMLInputElement22-expected.txt
new file mode 100644
index 0000000..48c1efc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement22-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement22
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement22.html b/LayoutTests/dom/html/level2/html/HTMLInputElement22.html
new file mode 100644
index 0000000..f07311c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement22.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLInputElement22.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table 1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8" VALUE="Password" TYPE="password" NAME="Password" SIZE="25" MAXLENGTH="5" ALT="Password entry" READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c" VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire" TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom" TABINDEX="10" VALUE="EarlyMornings" CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2" TABINDEX="11" VALUE="AfterNoon" ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12" VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13" VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage" USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl" TABINDEX="15" ACCEPT="GIF,JPEG" ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLInputElement22.js b/LayoutTests/dom/html/level2/html/HTMLInputElement22.js
new file mode 100644
index 0000000..44702c9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLInputElement22.js
@@ -0,0 +1,108 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement22";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "input");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+HTMLInputElement.select should select the contents of a text area.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-34677168
+*/
+function HTMLInputElement22() {
+ var success;
+ if(checkInitialization(builder, "HTMLInputElement22") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+ var checked;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "input");
+ nodeList = doc.getElementsByTagName("input");
+ assertSize("Asize",9,nodeList);
+testNode = nodeList.item(0);
+ testNode.select();
+
+}
+
+
+
+
+function runTest() {
+ HTMLInputElement22();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01-expected.txt
new file mode 100644
index 0000000..6a742d4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIsIndexElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01.html b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01.html
new file mode 100644
index 0000000..caa1f33
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - ISINDEX</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIsIndexElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<ISINDEX PROMPT="New Employee: ">
+</FORM>
+<ISINDEX PROMPT="Old Employee: ">
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01.js b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01.js
new file mode 100644
index 0000000..1e05171
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement01.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIsIndexElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "isindex");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87069980
+*/
+function HTMLIsIndexElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLIsIndexElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var fNode;
+ var doc;
+ var prompt;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "isindex");
+ nodeList = doc.getElementsByTagName("isindex");
+ testNode = nodeList.item(0);
+ assertNotNull("notnull",testNode);
+prompt = testNode.prompt;
+
+ assertEquals("IsIndex.Prompt","New Employee: ",prompt);
+ fNode = testNode.form;
+
+ assertNotNull("formNotNull",fNode);
+vform = fNode.id;
+
+ assertEquals("formLink","form1",vform);
+ assertSize("Asize",2,nodeList);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIsIndexElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02-expected.txt
new file mode 100644
index 0000000..afeb9f8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIsIndexElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02.html b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02.html
new file mode 100644
index 0000000..f5c7e3c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - ISINDEX</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIsIndexElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<ISINDEX PROMPT="New Employee: ">
+</FORM>
+<ISINDEX PROMPT="Old Employee: ">
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02.js b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02.js
new file mode 100644
index 0000000..b7c2854
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement02.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIsIndexElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "isindex");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87069980
+*/
+function HTMLIsIndexElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLIsIndexElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+ var prompt;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "isindex");
+ nodeList = doc.getElementsByTagName("isindex");
+ testNode = nodeList.item(1);
+ assertNotNull("notnull",testNode);
+prompt = testNode.prompt;
+
+ assertEquals("IsIndex.Prompt","Old Employee: ",prompt);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+ assertSize("Asize",2,nodeList);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIsIndexElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03-expected.txt
new file mode 100644
index 0000000..c889eb7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIsIndexElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03.html b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03.html
new file mode 100644
index 0000000..49ddcbf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - ISINDEX</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLIsIndexElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<ISINDEX PROMPT="New Employee: ">
+</FORM>
+<ISINDEX PROMPT="Old Employee: ">
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03.js b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03.js
new file mode 100644
index 0000000..9421855
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLIsIndexElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIsIndexElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "isindex");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The prompt attribute specifies the prompt message.
+
+ Retrieve the prompt attribute of the 1st isindex element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33589862
+*/
+function HTMLIsIndexElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLIsIndexElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vprompt;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "isindex");
+ nodeList = doc.getElementsByTagName("isindex");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vprompt = testNode.prompt;
+
+ assertEquals("promptLink","New Employee: ",vprompt);
+
+}
+
+
+
+
+function runTest() {
+ HTMLIsIndexElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLIElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLIElement01-expected.txt
new file mode 100644
index 0000000..637354d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLIElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLIElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLIElement01.html b/LayoutTests/dom/html/level2/html/HTMLLIElement01.html
new file mode 100644
index 0000000..5a2eb0f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLIElement01.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LI</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLIElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<OL>
+<LI TYPE="square" VALUE="2">EMP0001
+<UL>
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLIElement01.js b/LayoutTests/dom/html/level2/html/HTMLLIElement01.js
new file mode 100644
index 0000000..797b444
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLIElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLIElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "li");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute is a list item bullet style.
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52387668
+*/
+function HTMLLIElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLLIElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "li");
+ nodeList = doc.getElementsByTagName("li");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","square",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLIElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLIElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLIElement02-expected.txt
new file mode 100644
index 0000000..770f43f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLIElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLIElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLIElement02.html b/LayoutTests/dom/html/level2/html/HTMLLIElement02.html
new file mode 100644
index 0000000..4e28238
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLIElement02.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LI</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLIElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<OL>
+<LI TYPE="square" VALUE="2">EMP0001
+<UL>
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLIElement02.js b/LayoutTests/dom/html/level2/html/HTMLLIElement02.js
new file mode 100644
index 0000000..4e19d2c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLIElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLIElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "li");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The value attribute is a reset sequence number when used in OL.
+
+ Retrieve the value attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-45496263
+*/
+function HTMLLIElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLLIElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "li");
+ nodeList = doc.getElementsByTagName("li");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vvalue = testNode.value;
+
+ assertEquals("valueLink",2,vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLIElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLabelElement01-expected.txt
new file mode 100644
index 0000000..c9a9819
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement01.html b/LayoutTests/dom/html/level2/html/HTMLLabelElement01.html
new file mode 100644
index 0000000..5cf1637
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement01.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LABEL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLabelElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your First Password:</LABEL>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</P>
+</FORM>
+<P>
+<LABEL ACCESSKEY="c" FOR="input2">Enter Your Second Password:</LABEL>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement01.js b/LayoutTests/dom/html/level2/html/HTMLLabelElement01.js
new file mode 100644
index 0000000..00973ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement01.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "label");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32480901
+*/
+function HTMLLabelElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLLabelElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var fNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "label");
+ nodeList = doc.getElementsByTagName("label");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("formLink","form1",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLabelElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLabelElement02-expected.txt
new file mode 100644
index 0000000..c55c41b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement02.html b/LayoutTests/dom/html/level2/html/HTMLLabelElement02.html
new file mode 100644
index 0000000..6c1d968
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement02.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LABEL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLabelElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your First Password:</LABEL>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</P>
+</FORM>
+<P>
+<LABEL ACCESSKEY="c" FOR="input2">Enter Your Second Password:</LABEL>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement02.js b/LayoutTests/dom/html/level2/html/HTMLLabelElement02.js
new file mode 100644
index 0000000..322b888
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "label");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32480901
+*/
+function HTMLLabelElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLLabelElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "label");
+ nodeList = doc.getElementsByTagName("label");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLabelElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLabelElement03-expected.txt
new file mode 100644
index 0000000..dcc0181
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement03.html b/LayoutTests/dom/html/level2/html/HTMLLabelElement03.html
new file mode 100644
index 0000000..71f3444
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement03.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LABEL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLabelElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your First Password:</LABEL>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</P>
+</FORM>
+<P>
+<LABEL ACCESSKEY="c" FOR="input2">Enter Your Second Password:</LABEL>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement03.js b/LayoutTests/dom/html/level2/html/HTMLLabelElement03.js
new file mode 100644
index 0000000..140d808
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "label");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The accessKey attribute is a single character access key to give access
+ to the form control.
+
+ Retrieve the accessKey attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-43589892
+*/
+function HTMLLabelElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLLabelElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "label");
+ nodeList = doc.getElementsByTagName("label");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("accesskeyLink","b",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLabelElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLabelElement04-expected.txt
new file mode 100644
index 0000000..6f9f2a2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement04.html b/LayoutTests/dom/html/level2/html/HTMLLabelElement04.html
new file mode 100644
index 0000000..9ee19ba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement04.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LABEL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLabelElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your First Password:</LABEL>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</P>
+</FORM>
+<P>
+<LABEL ACCESSKEY="c" FOR="input2">Enter Your Second Password:</LABEL>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLabelElement04.js b/LayoutTests/dom/html/level2/html/HTMLLabelElement04.js
new file mode 100644
index 0000000..98ec15f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLabelElement04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "label");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The htmlFor attribute links this label with another form control by
+ id attribute.
+
+ Retrieve the htmlFor attribute of the first LABEL element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96509813
+*/
+function HTMLLabelElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLLabelElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vhtmlfor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "label");
+ nodeList = doc.getElementsByTagName("label");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vhtmlfor = testNode.htmlFor;
+
+ assertEquals("htmlForLink","input1",vhtmlfor);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLabelElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLegendElement01-expected.txt
new file mode 100644
index 0000000..70a8e82
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement01.html b/LayoutTests/dom/html/level2/html/HTMLLegendElement01.html
new file mode 100644
index 0000000..48cf572
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement01.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LEGEND</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLegendElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<FIELDSET>
+<LEGEND ACCESSKEY="b" ALIGN="top">Enter Password1:</LEGEND>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</FIELDSET>
+</FORM>
+<FIELDSET>
+<LEGEND ACCESSKEY="c" ALIGN="bottom">Enter Password2:</LEGEND>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</FIELDSET>
+</BODY>
+</HTML>
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement01.js b/LayoutTests/dom/html/level2/html/HTMLLegendElement01.js
new file mode 100644
index 0000000..bc3206e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement01.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "legend");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute from the first LEGEND element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-29594519
+*/
+function HTMLLegendElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLLegendElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var fNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "legend");
+ nodeList = doc.getElementsByTagName("legend");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("formLink","form1",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLegendElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLegendElement02-expected.txt
new file mode 100644
index 0000000..4b2cf84
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement02.html b/LayoutTests/dom/html/level2/html/HTMLLegendElement02.html
new file mode 100644
index 0000000..830be11
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement02.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LEGEND</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLegendElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<FIELDSET>
+<LEGEND ACCESSKEY="b" ALIGN="top">Enter Password1:</LEGEND>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</FIELDSET>
+</FORM>
+<FIELDSET>
+<LEGEND ACCESSKEY="c" ALIGN="bottom">Enter Password2:</LEGEND>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</FIELDSET>
+</BODY>
+</HTML>
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement02.js b/LayoutTests/dom/html/level2/html/HTMLLegendElement02.js
new file mode 100644
index 0000000..dc51f8c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "legend");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the second ELEMENT and examine its form element.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-29594519
+*/
+function HTMLLegendElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLLegendElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "legend");
+ nodeList = doc.getElementsByTagName("legend");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLegendElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLegendElement03-expected.txt
new file mode 100644
index 0000000..5a96cec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement03.html b/LayoutTests/dom/html/level2/html/HTMLLegendElement03.html
new file mode 100644
index 0000000..47fff80
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement03.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LEGEND</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLegendElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<FIELDSET>
+<LEGEND ACCESSKEY="b" ALIGN="top">Enter Password1:</LEGEND>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</FIELDSET>
+</FORM>
+<FIELDSET>
+<LEGEND ACCESSKEY="c" ALIGN="bottom">Enter Password2:</LEGEND>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</FIELDSET>
+</BODY>
+</HTML>
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement03.js b/LayoutTests/dom/html/level2/html/HTMLLegendElement03.js
new file mode 100644
index 0000000..43ae5c4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "legend");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The accessKey attribute is a single character access key to give access
+ to the form control.
+
+ Retrieve the accessKey attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11297832
+*/
+function HTMLLegendElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLLegendElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "legend");
+ nodeList = doc.getElementsByTagName("legend");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("accesskeyLink","b",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLegendElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLegendElement04-expected.txt
new file mode 100644
index 0000000..ee18d11
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement04.html b/LayoutTests/dom/html/level2/html/HTMLLegendElement04.html
new file mode 100644
index 0000000..79a12da
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement04.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LEGEND</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLegendElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<FIELDSET>
+<LEGEND ACCESSKEY="b" ALIGN="top">Enter Password1:</LEGEND>
+<INPUT ID="input1" TYPE="password" NAME="Password1"/>
+</FIELDSET>
+</FORM>
+<FIELDSET>
+<LEGEND ACCESSKEY="c" ALIGN="bottom">Enter Password2:</LEGEND>
+<INPUT ID="input2" TYPE="password" NAME="Password2"/>
+</FIELDSET>
+</BODY>
+</HTML>
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLegendElement04.js b/LayoutTests/dom/html/level2/html/HTMLLegendElement04.js
new file mode 100644
index 0000000..15b85c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLegendElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "legend");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the text alignment relative to FIELDSET.
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79538067
+*/
+function HTMLLegendElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLLegendElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "legend");
+ nodeList = doc.getElementsByTagName("legend");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","top",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLegendElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement01-expected.txt
new file mode 100644
index 0000000..79823a8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement01.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement01.html
new file mode 100644
index 0000000..b9f44d6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement01.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement01.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement01.js
new file mode 100644
index 0000000..222240b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The disabled attribute enables/disables the link.
+
+ Retrieve the disabled attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87355129
+*/
+function HTMLLinkElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vdisabled = testNode.disabled;
+
+ assertFalse("disabled",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement02-expected.txt
new file mode 100644
index 0000000..a01e7b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement02.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement02.html
new file mode 100644
index 0000000..cbd5661
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement02.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement02.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement02.js
new file mode 100644
index 0000000..c6149cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The charset attribute indicates the character encoding of the linked
+ resource.
+
+ Retrieve the charset attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63954491
+*/
+function HTMLLinkElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharset;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vcharset = testNode.charset;
+
+ assertEquals("charsetLink","Latin-1",vcharset);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement03-expected.txt
new file mode 100644
index 0000000..f15d965
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement03.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement03.html
new file mode 100644
index 0000000..826bdd4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement03.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement03.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement03.js
new file mode 100644
index 0000000..2a0a356
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The href attribute specifies the URI of the linked resource.
+
+ Retrieve the href attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33532588
+*/
+function HTMLLinkElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vhref;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vhref = testNode.href;
+
+ assertURIEquals("hrefLink",null,null,null,"glossary.html",null,null,null,null,vhref);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement04-expected.txt
new file mode 100644
index 0000000..45f15fe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement04.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement04.html
new file mode 100644
index 0000000..138d63f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement04.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement04.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement04.js
new file mode 100644
index 0000000..15a1862
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The hreflang attribute specifies the language code of the linked resource.
+
+ Retrieve the hreflang attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85145682
+*/
+function HTMLLinkElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vhreflang;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vhreflang = testNode.hreflang;
+
+ assertEquals("hreflangLink","en",vhreflang);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement05-expected.txt
new file mode 100644
index 0000000..ac3a1f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement05.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement05.html
new file mode 100644
index 0000000..9edd1ed
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement05.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement05.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement05.js
new file mode 100644
index 0000000..e807d75
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The media attribute specifies the targeted media.
+
+ Retrieve the media attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75813125
+*/
+function HTMLLinkElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vmedia;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vmedia = testNode.media;
+
+ assertEquals("mediaLink","screen",vmedia);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement06-expected.txt
new file mode 100644
index 0000000..33dec84
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement06.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement06.html
new file mode 100644
index 0000000..0746d67
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement06.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement06.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement06.js
new file mode 100644
index 0000000..d5f6c1e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement06.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rel attribute specifies the forward link type.
+
+ Retrieve the rel attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41369587
+*/
+function HTMLLinkElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vrel;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vrel = testNode.rel;
+
+ assertEquals("relLink","Glossary",vrel);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement07-expected.txt
new file mode 100644
index 0000000..ba698a4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement07.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement07.html
new file mode 100644
index 0000000..fc719fb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement07.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement07.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement07.js
new file mode 100644
index 0000000..71ae1f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement07.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rev attribute specifies the reverse link type.
+
+ Retrieve the rev attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40715461
+*/
+function HTMLLinkElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vrev;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vrev = testNode.rev;
+
+ assertEquals("revLink","stylesheet",vrev);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement08-expected.txt
new file mode 100644
index 0000000..98101bc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement08.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement08.html
new file mode 100644
index 0000000..0d762f3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement08.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement08.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement08.js
new file mode 100644
index 0000000..d44fd39
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement08.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the advisory content type.
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32498296
+*/
+function HTMLLinkElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","text/html",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLLinkElement09-expected.txt
new file mode 100644
index 0000000..8b8be03
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement09.html b/LayoutTests/dom/html/level2/html/HTMLLinkElement09.html
new file mode 100644
index 0000000..fe8b4b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement09.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - LINK</TITLE>
+<LINK CHARSET="Latin-1" TARGET="dynamic" HREF="./files/glossary.html" HREFLANG="en" MEDIA="screen" REL="Glossary" TYPE="text/html">
+<LINK CHARSET="Latin-1" HREF="./files/style1.css" HREFLANG="en" MEDIA="screen" REV="stylesheet" TYPE="text/css">
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLLinkElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLLinkElement09.js b/LayoutTests/dom/html/level2/html/HTMLLinkElement09.js
new file mode 100644
index 0000000..c6d191b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLLinkElement09.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "link2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The target attribute specifies the frame to render the resource in.
+
+ Retrieve the target attribute and examine it's value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84183095
+*/
+function HTMLLinkElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLLinkElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vtarget;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "link2");
+ nodeList = doc.getElementsByTagName("link");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtarget = testNode.target;
+
+ assertEquals("targetLink","dynamic",vtarget);
+
+}
+
+
+
+
+function runTest() {
+ HTMLLinkElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLMapElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLMapElement01-expected.txt
new file mode 100644
index 0000000..c432d7f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMapElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMapElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLMapElement01.html b/LayoutTests/dom/html/level2/html/HTMLMapElement01.html
new file mode 100644
index 0000000..d102c1c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMapElement01.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MAP</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLMapElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA HREF="./files/dletter1.html" TITLE="Domain1" ALT="Domain1">
+<AREA HREF="./files/dletter2.html" TITLE="Domain2" ALT="Domain2">
+<AREA HREF="./files/dletter3.html" TITLE="Domain3" ALT="Domain3">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLMapElement01.js b/LayoutTests/dom/html/level2/html/HTMLMapElement01.js
new file mode 100644
index 0000000..0cc9203
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMapElement01.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMapElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "map");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The areas attribute is a list of areas defined for the image map.
+
+ Retrieve the areas attribute and find the number of areas defined.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71838730
+*/
+function HTMLMapElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLMapElement01") != null) return;
+ var nodeList;
+ var areasnodeList;
+ var testNode;
+ var vareas;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "map");
+ nodeList = doc.getElementsByTagName("map");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ areasnodeList = testNode.areas;
+
+ vareas = areasnodeList.length;
+
+ assertEquals("areasLink",3,vareas);
+
+}
+
+
+
+
+function runTest() {
+ HTMLMapElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLMapElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLMapElement02-expected.txt
new file mode 100644
index 0000000..2144217
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMapElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMapElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLMapElement02.html b/LayoutTests/dom/html/level2/html/HTMLMapElement02.html
new file mode 100644
index 0000000..f9e3085
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMapElement02.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MAP</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLMapElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA HREF="./files/dletter1.html" TITLE="Domain1" ALT="Domain1">
+<AREA HREF="./files/dletter2.html" TITLE="Domain2" ALT="Domain2">
+<AREA HREF="./files/dletter3.html" TITLE="Domain3" ALT="Domain3">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLMapElement02.js b/LayoutTests/dom/html/level2/html/HTMLMapElement02.js
new file mode 100644
index 0000000..055b9d9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMapElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMapElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "map");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute names the map(for use with usemap).
+
+ Retrieve the name attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52696514
+*/
+function HTMLMapElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLMapElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "map");
+ nodeList = doc.getElementsByTagName("map");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("mapLink","mapid",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLMapElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLMenuElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLMenuElement01-expected.txt
new file mode 100644
index 0000000..ec01f61
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMenuElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMenuElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLMenuElement01.html b/LayoutTests/dom/html/level2/html/HTMLMenuElement01.html
new file mode 100644
index 0000000..51b58bd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMenuElement01.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MENU</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLMenuElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<MENU COMPACT="COMPACT">
+<LI>Interview</LI>
+<LI>Paperwork</LI>
+<LI>Give start date</LI>
+</MENU>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLMenuElement01.js b/LayoutTests/dom/html/level2/html/HTMLMenuElement01.js
new file mode 100644
index 0000000..11ff1dc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMenuElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMenuElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "menu");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The compact attribute specifies a boolean value on whether to display
+ the list more compactly.
+
+ Retrieve the compact attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68436464
+*/
+function HTMLMenuElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLMenuElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcompact;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "menu");
+ nodeList = doc.getElementsByTagName("menu");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcompact = testNode.compact;
+
+ assertTrue("compactLink",vcompact);
+
+}
+
+
+
+
+function runTest() {
+ HTMLMenuElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLMetaElement01-expected.txt
new file mode 100644
index 0000000..d025062
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement01.html b/LayoutTests/dom/html/level2/html/HTMLMetaElement01.html
new file mode 100644
index 0000000..cc5f360
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement01.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META NAME="Meta-Name" HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8" SCHEME="NIST">
+<TITLE>NIST DOM HTML Test - META</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLMetaElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement01.js b/LayoutTests/dom/html/level2/html/HTMLMetaElement01.js
new file mode 100644
index 0000000..a5dd526
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "meta");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The content attribute specifies associated information.
+
+ Retrieve the content attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87670826
+*/
+function HTMLMetaElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLMetaElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcontent;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "meta");
+ nodeList = doc.getElementsByTagName("meta");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcontent = testNode.content;
+
+ assertEquals("contentLink","text/html; CHARSET=utf-8",vcontent);
+
+}
+
+
+
+
+function runTest() {
+ HTMLMetaElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLMetaElement02-expected.txt
new file mode 100644
index 0000000..b2e6bd4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement02.html b/LayoutTests/dom/html/level2/html/HTMLMetaElement02.html
new file mode 100644
index 0000000..b96d685
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement02.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META NAME="Meta-Name" HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8" SCHEME="NIST">
+<TITLE>NIST DOM HTML Test - META</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLMetaElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement02.js b/LayoutTests/dom/html/level2/html/HTMLMetaElement02.js
new file mode 100644
index 0000000..0427be2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "meta");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The httpEquiv attribute specifies an HTTP respnse header name.
+
+ Retrieve the httpEquiv attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77289449
+*/
+function HTMLMetaElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLMetaElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vhttpequiv;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "meta");
+ nodeList = doc.getElementsByTagName("meta");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vhttpequiv = testNode.httpEquiv;
+
+ assertEquals("httpEquivLink","Content-Type",vhttpequiv);
+
+}
+
+
+
+
+function runTest() {
+ HTMLMetaElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLMetaElement03-expected.txt
new file mode 100644
index 0000000..683fdd8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement03.html b/LayoutTests/dom/html/level2/html/HTMLMetaElement03.html
new file mode 100644
index 0000000..d768c0f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement03.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META NAME="Meta-Name" HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8" SCHEME="NIST">
+<TITLE>NIST DOM HTML Test - META</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLMetaElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement03.js b/LayoutTests/dom/html/level2/html/HTMLMetaElement03.js
new file mode 100644
index 0000000..25a9e7d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "meta");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies the meta information name.
+
+ Retrieve the name attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31037081
+*/
+function HTMLMetaElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLMetaElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "meta");
+ nodeList = doc.getElementsByTagName("meta");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","Meta-Name",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLMetaElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLMetaElement04-expected.txt
new file mode 100644
index 0000000..f8d1cd0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement04.html b/LayoutTests/dom/html/level2/html/HTMLMetaElement04.html
new file mode 100644
index 0000000..54667e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement04.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META NAME="Meta-Name" HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8" SCHEME="NIST">
+<TITLE>NIST DOM HTML Test - META</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLMetaElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLMetaElement04.js b/LayoutTests/dom/html/level2/html/HTMLMetaElement04.js
new file mode 100644
index 0000000..ab46388
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLMetaElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "meta");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The scheme attribute specifies a select form of content.
+
+ Retrieve the scheme attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35993789
+*/
+function HTMLMetaElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLMetaElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vscheme;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "meta");
+ nodeList = doc.getElementsByTagName("meta");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vscheme = testNode.scheme;
+
+ assertEquals("schemeLink","NIST",vscheme);
+
+}
+
+
+
+
+function runTest() {
+ HTMLMetaElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLModElement01-expected.txt
new file mode 100644
index 0000000..647bed2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement01.html b/LayoutTests/dom/html/level2/html/HTMLModElement01.html
new file mode 100644
index 0000000..392ff82
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement01.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MOD</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLModElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<INS CITE="./files/ins-reasons.html" DATETIME="January 1, 2002">The INS element is used to indicate that a section of a document had been inserted.</INS>
+<BR/>
+<DEL CITE="./files/del-reasons.html" DATETIME="January 2, 2002">The DEL element is used to indicate that a section of a document had been removed.</DEL>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement01.js b/LayoutTests/dom/html/level2/html/HTMLModElement01.js
new file mode 100644
index 0000000..a16373c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "mod");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cite attribute specifies an URI designating a document that describes
+ the reason for the change.
+
+ Retrieve the cite attribute of the INS element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75101708
+*/
+function HTMLModElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLModElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcite;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "mod");
+ nodeList = doc.getElementsByTagName("ins");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcite = testNode.cite;
+
+ assertURIEquals("citeLink",null,null,null,"ins-reasons.html",null,null,null,null,vcite);
+
+}
+
+
+
+
+function runTest() {
+ HTMLModElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLModElement02-expected.txt
new file mode 100644
index 0000000..da9bac6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement02.html b/LayoutTests/dom/html/level2/html/HTMLModElement02.html
new file mode 100644
index 0000000..6131aef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement02.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MOD</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLModElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<INS CITE="./files/ins-reasons.html" DATETIME="January 1, 2002">The INS element is used to indicate that a section of a document had been inserted.</INS>
+<BR/>
+<DEL CITE="./files/del-reasons.html" DATETIME="January 2, 2002">The DEL element is used to indicate that a section of a document had been removed.</DEL>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement02.js b/LayoutTests/dom/html/level2/html/HTMLModElement02.js
new file mode 100644
index 0000000..b655cbf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "mod");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dateTime attribute specifies the date and time of the change.
+
+ Retrieve the dateTime attribute of the INS element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88432678
+*/
+function HTMLModElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLModElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vdatetime;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "mod");
+ nodeList = doc.getElementsByTagName("ins");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdatetime = testNode.dateTime;
+
+ assertEquals("dateTimeLink","January 1, 2002",vdatetime);
+
+}
+
+
+
+
+function runTest() {
+ HTMLModElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLModElement03-expected.txt
new file mode 100644
index 0000000..80658a7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement03.html b/LayoutTests/dom/html/level2/html/HTMLModElement03.html
new file mode 100644
index 0000000..1b7b52e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement03.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MOD</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLModElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<INS CITE="./files/ins-reasons.html" DATETIME="January 1, 2002">The INS element is used to indicate that a section of a document had been inserted.</INS>
+<BR/>
+<DEL CITE="./files/del-reasons.html" DATETIME="January 2, 2002">The DEL element is used to indicate that a section of a document had been removed.</DEL>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement03.js b/LayoutTests/dom/html/level2/html/HTMLModElement03.js
new file mode 100644
index 0000000..55a020a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "mod");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cite attribute specifies an URI designating a document that describes
+ the reason for the change.
+
+ Retrieve the cite attribute of the DEL element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75101708
+*/
+function HTMLModElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLModElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vcite;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "mod");
+ nodeList = doc.getElementsByTagName("del");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcite = testNode.cite;
+
+ assertURIEquals("citeLink",null,null,null,"del-reasons.html",null,null,null,null,vcite);
+
+}
+
+
+
+
+function runTest() {
+ HTMLModElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLModElement04-expected.txt
new file mode 100644
index 0000000..267c0ab
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement04.html b/LayoutTests/dom/html/level2/html/HTMLModElement04.html
new file mode 100644
index 0000000..5970610
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement04.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - MOD</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLModElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<INS CITE="./files/ins-reasons.html" DATETIME="January 1, 2002">The INS element is used to indicate that a section of a document had been inserted.</INS>
+<BR/>
+<DEL CITE="./files/del-reasons.html" DATETIME="January 2, 2002">The DEL element is used to indicate that a section of a document had been removed.</DEL>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLModElement04.js b/LayoutTests/dom/html/level2/html/HTMLModElement04.js
new file mode 100644
index 0000000..0837e30
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLModElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "mod");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The dateTime attribute specifies the date and time of the change.
+
+ Retrieve the dateTime attribute of the DEL element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88432678
+*/
+function HTMLModElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLModElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vdatetime;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "mod");
+ nodeList = doc.getElementsByTagName("del");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdatetime = testNode.dateTime;
+
+ assertEquals("dateTimeLink","January 2, 2002",vdatetime);
+
+}
+
+
+
+
+function runTest() {
+ HTMLModElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOListElement01-expected.txt
new file mode 100644
index 0000000..8fbc534
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement01.html b/LayoutTests/dom/html/level2/html/HTMLOListElement01.html
new file mode 100644
index 0000000..61b973a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement01.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OLIST</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOListElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<OL COMPACT="compact" START="1" TYPE="1">
+<LI>EMP0001
+<UL>
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+<LI>EMP0002
+<UL>
+<LI>Martha Raynolds
+<DL>
+<DD>Secretary</DD>
+<DD>35,000</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement01.js b/LayoutTests/dom/html/level2/html/HTMLOListElement01.js
new file mode 100644
index 0000000..be43d86
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "olist");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The compact attribute specifies a boolean value on whether to display
+ the list more compactly.
+
+ Retrieve the compact attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76448506
+*/
+function HTMLOListElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLOListElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcompact;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "olist");
+ nodeList = doc.getElementsByTagName("ol");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcompact = testNode.compact;
+
+ assertTrue("compactLink",vcompact);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOListElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOListElement02-expected.txt
new file mode 100644
index 0000000..4e81663
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement02.html b/LayoutTests/dom/html/level2/html/HTMLOListElement02.html
new file mode 100644
index 0000000..d1f4e41
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement02.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OLIST</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOListElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<OL COMPACT="compact" START="1" TYPE="1">
+<LI>EMP0001
+<UL>
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+<LI>EMP0002
+<UL>
+<LI>Martha Raynolds
+<DL>
+<DD>Secretary</DD>
+<DD>35,000</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement02.js b/LayoutTests/dom/html/level2/html/HTMLOListElement02.js
new file mode 100644
index 0000000..81b0fed
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "olist");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The start attribute specifies the starting sequence number.
+
+ Retrieve the start attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14793325
+*/
+function HTMLOListElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLOListElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vstart;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "olist");
+ nodeList = doc.getElementsByTagName("ol");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vstart = testNode.start;
+
+ assertEquals("startLink",1,vstart);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOListElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOListElement03-expected.txt
new file mode 100644
index 0000000..1d774a2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement03.html b/LayoutTests/dom/html/level2/html/HTMLOListElement03.html
new file mode 100644
index 0000000..a396dcb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement03.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OLIST</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOListElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<OL COMPACT="compact" START="1" TYPE="1">
+<LI>EMP0001
+<UL>
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+<LI>EMP0002
+<UL>
+<LI>Martha Raynolds
+<DL>
+<DD>Secretary</DD>
+<DD>35,000</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOListElement03.js b/LayoutTests/dom/html/level2/html/HTMLOListElement03.js
new file mode 100644
index 0000000..05f918e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOListElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "olist");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the numbering style.
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40971103
+*/
+function HTMLOListElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLOListElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "olist");
+ nodeList = doc.getElementsByTagName("ol");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","1",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOListElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement01-expected.txt
new file mode 100644
index 0000000..6c0be18
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement01.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement01.html
new file mode 100644
index 0000000..1167d44
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement01.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM ID="object2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement01.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement01.js
new file mode 100644
index 0000000..d60bcad
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement01.js
@@ -0,0 +1,116 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773
+*/
+function HTMLObjectElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var fNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object2");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("idLink","object2",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement02-expected.txt
new file mode 100644
index 0000000..0daed8c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement02.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement02.html
new file mode 100644
index 0000000..4a43b69
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement02.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement02.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement02.js
new file mode 100644
index 0000000..700e611
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The code attribute specifies an Applet class file.
+
+Retrieve the code attribute of the second OBJECT element and examine
+its value. Should be "" since CODE is not a valid attribute for OBJECT.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75241146
+*/
+function HTMLObjectElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vcode = testNode.code;
+
+ assertEquals("codeLink","",vcode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement03-expected.txt
new file mode 100644
index 0000000..233e3a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement03.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement03.html
new file mode 100644
index 0000000..7a6c37f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement03.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement03.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement03.js
new file mode 100644
index 0000000..e3c596d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement03.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the alignment of this object with respect
+ to its surrounding text.
+
+ Retrieve the align attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16962097
+*/
+function HTMLObjectElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","middle",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement04-expected.txt
new file mode 100644
index 0000000..dfc46f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement04.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement04.html
new file mode 100644
index 0000000..6078744
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement04.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement04.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement04.js
new file mode 100644
index 0000000..09ed47f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The archive attribute specifies a space-separated list of archives.
+
+ Retrieve the archive attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47783837
+*/
+function HTMLObjectElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var varchive;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ varchive = testNode.archive;
+
+ assertEquals("archiveLink","",varchive);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement05-expected.txt
new file mode 100644
index 0000000..594ba4c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement05.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement05.html
new file mode 100644
index 0000000..08c8172
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement05.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement05.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement05.js
new file mode 100644
index 0000000..423efa3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement05.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The border attribute specifies the widht of the border around the object.
+
+ Retrieve the border attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82818419
+*/
+function HTMLObjectElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vborder;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vborder = testNode.border;
+
+ assertEquals("borderLink","0",vborder);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement06-expected.txt
new file mode 100644
index 0000000..b712dfc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement06.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement06.html
new file mode 100644
index 0000000..bfa82a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement06.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement06.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement06.js
new file mode 100644
index 0000000..8519100
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The codeBase attribute specifies the base URI for the classid, data and
+ archive attributes.
+
+ Retrieve the codeBase attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25709136
+*/
+function HTMLObjectElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vcodebase;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vcodebase = testNode.codeBase;
+
+ assertURIEquals("codebaseLink",null,"//xw2k.sdct.itl.nist.gov/brady/dom/",null,null,null,null,null,null,vcodebase);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement07-expected.txt
new file mode 100644
index 0000000..bde2549
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement07.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement07.html
new file mode 100644
index 0000000..d0cc5f6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement07.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement07.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement07.js
new file mode 100644
index 0000000..88c6f29
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The codeType attribute specifies the data downloaded via the classid
+ attribute.
+
+ Retrieve the codeType attribute of the second OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19945008
+*/
+function HTMLObjectElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vcodetype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vcodetype = testNode.codeType;
+
+ assertEquals("codetypeLink","image/gif",vcodetype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement08-expected.txt
new file mode 100644
index 0000000..07338f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement08.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement08.html
new file mode 100644
index 0000000..73e16c4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement08.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement08.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement08.js
new file mode 100644
index 0000000..e8fa44c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement08.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The data attribute specifies the URI of the location of the objects data.
+
+ Retrieve the data attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-81766986
+*/
+function HTMLObjectElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vdata;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vdata = testNode.data;
+
+ assertURIEquals("dataLink",null,null,null,"logo.gif",null,null,null,null,vdata);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement09-expected.txt
new file mode 100644
index 0000000..77af5fc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement09.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement09.html
new file mode 100644
index 0000000..b261b9f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement09.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement09.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement09.js
new file mode 100644
index 0000000..6df1ec4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement09.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The declare attribute specifies this object should be declared only and
+ no instance of it should be created.
+
+ Retrieve the declare attribute of the second OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-942770
+*/
+function HTMLObjectElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vdeclare;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vdeclare = testNode.declare;
+
+ assertTrue("declareLink",vdeclare);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement10-expected.txt
new file mode 100644
index 0000000..8db739d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement10.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement10.html
new file mode 100644
index 0000000..34e3bd2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement10.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement10.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement10.js
new file mode 100644
index 0000000..27799a4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The height attribute overrides the value of the actual height of the
+ object.
+
+ Retrieve the height attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88925838
+*/
+function HTMLObjectElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vheight = testNode.height;
+
+ assertEquals("heightLink","60",vheight);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement11-expected.txt
new file mode 100644
index 0000000..554b01f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement11.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement11.html
new file mode 100644
index 0000000..e9a7bec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement11.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement11.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement11.js
new file mode 100644
index 0000000..1a9b193
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement11.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The hspace attribute specifies the horizontal space to the left and right
+ of this image, applet or object.
+
+ Retrieve the hspace attribute of the first OBJECT element and examine
+ it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-17085376
+*/
+function HTMLObjectElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vhspace;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vhspace = testNode.hspace;
+
+ assertEquals("hspaceLink",0,vhspace);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement12-expected.txt
new file mode 100644
index 0000000..7d3e87c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement12.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement12.html
new file mode 100644
index 0000000..b96ceb7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement12.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement12.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement12.js
new file mode 100644
index 0000000..65e40f6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement12.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The standby attribute specifies a message to render while loading the
+ object.
+
+ Retrieve the standby attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25039673
+*/
+function HTMLObjectElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vstandby;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vstandby = testNode.standby;
+
+ assertEquals("alignLink","Loading Image ...",vstandby);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement13-expected.txt
new file mode 100644
index 0000000..4e03078
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement13.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement13.html
new file mode 100644
index 0000000..aa0e94c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement13.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement13.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement13.js
new file mode 100644
index 0000000..71d37cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement13.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tabIndex attribute specifies the elements position in the tabbing
+ order.
+
+ Retrieve the tabIndex attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27083787
+*/
+function HTMLObjectElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement13") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",0,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement14-expected.txt
new file mode 100644
index 0000000..9c90284
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement14.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement14.html
new file mode 100644
index 0000000..373a23d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement14.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement14.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement14.js
new file mode 100644
index 0000000..42960f6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement14.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the content type for data downloaded via
+ the data attribute.
+
+ Retrieve the type attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91665621
+*/
+function HTMLObjectElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement14") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","image/gif",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement15-expected.txt
new file mode 100644
index 0000000..9f334ad
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement15.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement15.html
new file mode 100644
index 0000000..1dcf7d8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement15.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement15.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement15.js
new file mode 100644
index 0000000..17a4211
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement15.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The useMap attribute specifies the used client-side image map.
+
+ Retrieve the useMap attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6649772
+*/
+function HTMLObjectElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement15") != null) return;
+ var nodeList;
+ var testNode;
+ var vusemap;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vusemap = testNode.useMap;
+
+ assertEquals("useMapLink","#DivLogo-map",vusemap);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement16-expected.txt
new file mode 100644
index 0000000..3366b9b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement16.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement16.html
new file mode 100644
index 0000000..efbc052
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement16.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement16.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement16.js
new file mode 100644
index 0000000..afc7d3f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement16.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vspace attribute specifies the vertical space above or below this
+ image, applet or object.
+
+ Retrieve the vspace attribute of the first OBJECT element and examine
+ it's value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-8682483
+*/
+function HTMLObjectElement16() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement16") != null) return;
+ var nodeList;
+ var testNode;
+ var vvspace;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vvspace = testNode.vspace;
+
+ assertEquals("vspaceLink",0,vvspace);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement17-expected.txt
new file mode 100644
index 0000000..7f728c7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement17.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement17.html
new file mode 100644
index 0000000..4549636
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement17.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement17.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement17.js
new file mode 100644
index 0000000..f409567
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement17.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute overrides the original width value.
+
+ Retrieve the width attribute of the first OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38538620
+*/
+function HTMLObjectElement17() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement17") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","550",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement18-expected.txt
new file mode 100644
index 0000000..b8a30b9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement18.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement18.html
new file mode 100644
index 0000000..66b8b8f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement18.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement18.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement18.js
new file mode 100644
index 0000000..a07f251
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement18.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies form control or object name when submitted
+ with a form.
+
+ Retrieve the name attribute of the second OBJECT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20110362
+*/
+function HTMLObjectElement18() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement18") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vname = testNode.name;
+
+ assertEquals("vspaceLink","OBJECT2",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement19-expected.txt
new file mode 100644
index 0000000..11375ba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement19.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement19.html
new file mode 100644
index 0000000..93049ef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement19.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM ID="object2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement19.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement19.js
new file mode 100644
index 0000000..809f4f8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement19.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ form.
+
+ Retrieve the form attribute and examine its value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773
+*/
+function HTMLObjectElement19() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement19") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object2");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLObjectElement20-expected.txt
new file mode 100644
index 0000000..80ab7f5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement20.html b/LayoutTests/dom/html/level2/html/HTMLObjectElement20.html
new file mode 100644
index 0000000..cf23828
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement20.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLObjectElement20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM ID="object2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLObjectElement20.js b/LayoutTests/dom/html/level2/html/HTMLObjectElement20.js
new file mode 100644
index 0000000..d4bd057
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLObjectElement20.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object2");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The contentDocument attribute specifies the document this object contains,
+ if there is any and it is available, or null otherwise.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-38538621
+*/
+function HTMLObjectElement20() {
+ var success;
+ if(checkInitialization(builder, "HTMLObjectElement20") != null) return;
+ var testNode;
+ var cd;
+ var vtitle;
+ var doc;
+ var nodeList;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object2");
+ nodeList = doc.getElementsByTagName("object");
+ testNode = nodeList.item(1);
+ cd = testNode.contentDocument;
+
+ assertNull("noContentDocument",cd);
+
+}
+
+
+
+
+function runTest() {
+ HTMLObjectElement20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01-expected.txt
new file mode 100644
index 0000000..029f768
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptGroupElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01.html b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01.html
new file mode 100644
index 0000000..6240c3d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTGROUP</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptGroupElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="Form1" ACTION="test.pl" METHOD="post">
+<P>
+<SELECT NAME="select2">
+<OPTGROUP LABEL="Regular Employees">
+<OPTION>EMP0001</OPTION>
+<OPTION>EMP0002</OPTION>
+<OPTION>EMP0003A</OPTION>
+</OPTGROUP>
+<OPTGROUP DISABLED="disabled" LABEL="Temporary Employees">
+<OPTION>EMP0004</OPTION>
+<OPTION>EMP0005</OPTION>
+</OPTGROUP>
+</SELECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01.js b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01.js
new file mode 100644
index 0000000..a9a7518
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptGroupElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optgroup");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The disabled attribute indicates that the control is unavailable in
+ this context.
+
+ Retrieve the disabled attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15518803
+*/
+function HTMLOptGroupElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptGroupElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optgroup");
+ nodeList = doc.getElementsByTagName("optgroup");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vdisabled = testNode.disabled;
+
+ assertTrue("disabledLink",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptGroupElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02-expected.txt
new file mode 100644
index 0000000..c73635e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptGroupElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02.html b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02.html
new file mode 100644
index 0000000..0528d69
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTGROUP</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptGroupElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="Form1" ACTION="test.pl" METHOD="post">
+<P>
+<SELECT NAME="select2">
+<OPTGROUP LABEL="Regular Employees">
+<OPTION>EMP0001</OPTION>
+<OPTION>EMP0002</OPTION>
+<OPTION>EMP0003A</OPTION>
+</OPTGROUP>
+<OPTGROUP DISABLED="disabled" LABEL="Temporary Employees">
+<OPTION>EMP0004</OPTION>
+<OPTION>EMP0005</OPTION>
+</OPTGROUP>
+</SELECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02.js b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02.js
new file mode 100644
index 0000000..3f22ca7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptGroupElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptGroupElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optgroup");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The label attribute specifies the label assigned to this option group.
+
+ Retrieve the label attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95806054
+*/
+function HTMLOptGroupElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptGroupElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vlabel;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optgroup");
+ nodeList = doc.getElementsByTagName("optgroup");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vlabel = testNode.label;
+
+ assertEquals("labelLink","Regular Employees",vlabel);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptGroupElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement01-expected.txt
new file mode 100644
index 0000000..2c69e3e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement01.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement01.html
new file mode 100644
index 0000000..82e9690
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement01.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement01.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement01.js
new file mode 100644
index 0000000..691e277
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement01.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute from the first SELECT element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-17116503
+*/
+function HTMLOptionElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var fNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(0);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("formLink","form1",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement02-expected.txt
new file mode 100644
index 0000000..411db01
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement02.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement02.html
new file mode 100644
index 0000000..6c0cd49
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement02.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement02.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement02.js
new file mode 100644
index 0000000..d4ed9c5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ a form.
+
+ Retrieve the first OPTION attribute from the second select element and
+ examine its form element.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-17116503
+*/
+function HTMLOptionElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(6);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement03-expected.txt
new file mode 100644
index 0000000..f2ee8fe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement03.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement03.html
new file mode 100644
index 0000000..506f5f8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement03.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement03.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement03.js
new file mode 100644
index 0000000..734ca2c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement03.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The defaultSelected attribute contains the value of the selected
+ attribute.
+
+ Retrieve the defaultSelected attribute from the first OPTION element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-37770574
+*/
+function HTMLOptionElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vdefaultselected;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(0);
+ vdefaultselected = testNode.defaultSelected;
+
+ assertTrue("defaultSelectedLink",vdefaultselected);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement04-expected.txt
new file mode 100644
index 0000000..d5d81ea
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement04.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement04.html
new file mode 100644
index 0000000..d5e3b0c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement04.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement04.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement04.js
new file mode 100644
index 0000000..2bc4cd1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The text attribute contains the text contained within the option element.
+
+ Retrieve the text attribute from the second OPTION element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48154426
+*/
+function HTMLOptionElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vtext;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(1);
+ vtext = testNode.text;
+
+ assertEquals("textLink","EMP10002",vtext);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement05-expected.txt
new file mode 100644
index 0000000..09a3570
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement05.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement05.html
new file mode 100644
index 0000000..6e7040f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement05.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement05.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement05.js
new file mode 100644
index 0000000..58c1c2c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement05.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The index attribute indicates th index of this OPTION in ints parent
+ SELECT.
+
+ Retrieve the index attribute from the seventh OPTION element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14038413
+*/
+function HTMLOptionElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(6);
+ vindex = testNode.index;
+
+ assertEquals("indexLink",1,vindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement06-expected.txt
new file mode 100644
index 0000000..2c25e3f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement06.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement06.html
new file mode 100644
index 0000000..97a3abd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement06.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement06.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement06.js
new file mode 100644
index 0000000..12a9f0f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The disabled attribute indicates that this control is not available
+ within this context.
+
+ Retrieve the disabled attribute from the last OPTION element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23482473
+*/
+function HTMLOptionElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(9);
+ vdisabled = testNode.disabled;
+
+ assertTrue("disabledLink",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement07-expected.txt
new file mode 100644
index 0000000..621f568
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement07.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement07.html
new file mode 100644
index 0000000..f81d197
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement07.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement07.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement07.js
new file mode 100644
index 0000000..fea75fa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The label attribute is used in hierarchical menus. It specifies
+ a shorter label for an option that the content of the OPTION element.
+
+ Retrieve the label attribute from the second OPTION element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40736115
+*/
+function HTMLOptionElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vlabel;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(1);
+ vlabel = testNode.label;
+
+ assertEquals("labelLink","l1",vlabel);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement08-expected.txt
new file mode 100644
index 0000000..de5704c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement08.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement08.html
new file mode 100644
index 0000000..f017f04
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement08.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement08.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement08.js
new file mode 100644
index 0000000..94816d8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement08.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The selected attribute indicates the current state of the corresponding
+ form control in an interactive user-agent.
+
+ Retrieve the selected attribute from the first OPTION element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70874476
+*/
+function HTMLOptionElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vselected;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(0);
+ vselected = testNode.defaultSelected;
+
+ assertTrue("selectedLink",vselected);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionElement09-expected.txt
new file mode 100644
index 0000000..9b19564
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement09.html b/LayoutTests/dom/html/level2/html/HTMLOptionElement09.html
new file mode 100644
index 0000000..5620947
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement09.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionElement09.js b/LayoutTests/dom/html/level2/html/HTMLOptionElement09.js
new file mode 100644
index 0000000..3282505
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionElement09.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "option");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The value attribute contains the current form control value.
+
+ Retrieve the value attribute from the first OPTION element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6185554
+*/
+function HTMLOptionElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "option");
+ nodeList = doc.getElementsByTagName("option");
+ assertSize("Asize",10,nodeList);
+testNode = nodeList.item(0);
+ vvalue = testNode.value;
+
+ assertEquals("valueLink","10001",vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01-expected.txt
new file mode 100644
index 0000000..2be2b16
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01.html b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01.html
new file mode 100644
index 0000000..277b7b7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTIONSCOLLECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionsCollection01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01.js b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01.js
new file mode 100644
index 0000000..3fd9caf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection01.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optionscollection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ The length attribute specifies the length or size of the list.
+
+ Retrieve the first SELECT element and create a HTMLOptionsCollection
+ of the OPTION elements. Check the size of the length of OPTION elements.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-length
+*/
+function HTMLOptionsCollection01() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionsCollection01") != null) return;
+ var nodeList;
+ var testNode;
+ var optionsList;
+ var vlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optionscollection");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ optionsList = testNode.options;
+
+ vlength = optionsList.length;
+
+ assertEquals("lengthLink",5,vlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionsCollection01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02-expected.txt
new file mode 100644
index 0000000..84046e5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02.html b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02.html
new file mode 100644
index 0000000..f1b818d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTIONSCOLLECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionsCollection02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02.js b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02.js
new file mode 100644
index 0000000..574f73d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection02.js
@@ -0,0 +1,128 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optionscollection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index=3).
+ The item() method retrieves a node specified by ordinal index.
+ Nodes are numbered in tree order. The index origin is 0.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the fourth item in the list and examine its firstChild's
+ nodeValue.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item
+*/
+function HTMLOptionsCollection02() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionsCollection02") != null) return;
+ var nodeList;
+ var testNode;
+ var optionsNode;
+ var optionsValueNode;
+ var optionsList;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optionscollection");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ optionsList = testNode.options;
+
+ optionsNode = optionsList.item(3);
+ optionsValueNode = optionsNode.firstChild;
+
+ vvalue = optionsValueNode.nodeValue;
+
+ assertEquals("valueIndexLink","EMP10004",vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionsCollection02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03-expected.txt
new file mode 100644
index 0000000..cd5f991
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03.html b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03.html
new file mode 100644
index 0000000..d9df774
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTIONSCOLLECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionsCollection03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03.js b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03.js
new file mode 100644
index 0000000..03c80c0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection03.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optionscollection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has select1 as the value for the name attribute.
+ Get the nodeName of that element.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem
+*/
+function HTMLOptionsCollection03() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionsCollection03") != null) return;
+ var nodeList;
+ var testNode;
+ var optionsNode;
+ var formsnodeList;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optionscollection");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ formsnodeList = testNode.elements;
+
+ optionsNode = formsnodeList.namedItem("select1");
+ vname = optionsNode.nodeName;
+
+ assertEqualsAutoCase("element", "nameIndexLink","select",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionsCollection03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04-expected.txt
new file mode 100644
index 0000000..7f1ba47
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04.html b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04.html
new file mode 100644
index 0000000..bc184bb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTIONSCOLLECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionsCollection04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04.js b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04.js
new file mode 100644
index 0000000..3822eee
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection04.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optionscollection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has selectId as the value for the id attribute.
+ Get the nodeName of that element.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem
+*/
+function HTMLOptionsCollection04() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionsCollection04") != null) return;
+ var nodeList;
+ var testNode;
+ var optionsNode;
+ var formsnodeList;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optionscollection");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ formsnodeList = testNode.elements;
+
+ optionsNode = formsnodeList.namedItem("selectId");
+ vname = optionsNode.nodeName;
+
+ assertEqualsAutoCase("element", "nameIndexLink","select",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionsCollection04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05-expected.txt
new file mode 100644
index 0000000..86b988e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05.html b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05.html
new file mode 100644
index 0000000..23e7cf7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTIONSCOLLECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionsCollection05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05.js b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05.js
new file mode 100644
index 0000000..9a0c4ff
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection05.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optionscollection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute. Upon failure(e.q., no
+ node with this name exists), returns null.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has select9 as the value for the name attribute.
+ Null should be returned since there is not any name or id attribute with
+ select9 as a value.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem
+*/
+function HTMLOptionsCollection05() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionsCollection05") != null) return;
+ var nodeList;
+ var testNode;
+ var optionsNode;
+ var formsnodeList;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optionscollection");
+ nodeList = doc.getElementsByTagName("form");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ formsnodeList = testNode.elements;
+
+ optionsNode = formsnodeList.namedItem("select9");
+ assertNull("nameIndexLink",optionsNode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionsCollection05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06-expected.txt
new file mode 100644
index 0000000..ca0e6bf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06.html b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06.html
new file mode 100644
index 0000000..8cd0351
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTIONSCOLLECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionsCollection06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06.js b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06.js
new file mode 100644
index 0000000..05fa32c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection06.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optionscollection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index).
+ The item() method retrieves a node specified by ordinal index.
+ A value of null is returned if the index is out of range.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the tenth item in the list - null should be returned since
+ there are not 10 items in the list.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item
+*/
+function HTMLOptionsCollection06() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionsCollection06") != null) return;
+ var nodeList;
+ var testNode;
+ var optionsNode;
+ var optionsValueNode;
+ var optionsList;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optionscollection");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ optionsList = testNode.options;
+
+ optionsNode = optionsList.item(10);
+ assertNull("optionsIndexLink",optionsNode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionsCollection06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07-expected.txt
new file mode 100644
index 0000000..9973a06
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07.html b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07.html
new file mode 100644
index 0000000..4e874e5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OPTIONSCOLLECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLOptionsCollection07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" NAME="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="10001">EMP10001</OPTION>
+<OPTION LABEL="l1">EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2" disabled="disabled">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION DISABLED="disabled">EMP20005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07.js b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07.js
new file mode 100644
index 0000000..fed3402
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLOptionsCollection07.js
@@ -0,0 +1,128 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "optionscollection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index=0).
+ The item() method retrieves a node specified by ordinal index. Nodes
+ are numbered in tree order. The index origin is 0.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the first item in the list and examine its firstChild's
+ nodeValue.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item
+*/
+function HTMLOptionsCollection07() {
+ var success;
+ if(checkInitialization(builder, "HTMLOptionsCollection07") != null) return;
+ var nodeList;
+ var testNode;
+ var optionsNode;
+ var optionsValueNode;
+ var optionsList;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "optionscollection");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ optionsList = testNode.options;
+
+ optionsNode = optionsList.item(0);
+ optionsValueNode = optionsNode.firstChild;
+
+ vvalue = optionsValueNode.nodeValue;
+
+ assertEquals("valueIndexLink","EMP10001",vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLOptionsCollection07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLParagraphElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLParagraphElement01-expected.txt
new file mode 100644
index 0000000..027c605
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParagraphElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParagraphElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLParagraphElement01.html b/LayoutTests/dom/html/level2/html/HTMLParagraphElement01.html
new file mode 100644
index 0000000..fad35a0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParagraphElement01.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PARAGRAPH</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLParagraphElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P ALIGN="center">
+TEXT
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLParagraphElement01.js b/LayoutTests/dom/html/level2/html/HTMLParagraphElement01.js
new file mode 100644
index 0000000..d0ada2a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParagraphElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParagraphElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "paragraph");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal text alignment.
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53465507
+*/
+function HTMLParagraphElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLParagraphElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "paragraph");
+ nodeList = doc.getElementsByTagName("p");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLParagraphElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLParamElement01-expected.txt
new file mode 100644
index 0000000..197ca71
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement01.html b/LayoutTests/dom/html/level2/html/HTMLParamElement01.html
new file mode 100644
index 0000000..85b7f51
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement01.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PARAM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLParamElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT>
+<PARAM NAME="image3" TYPE="image/gif" VALUE="image/file.gif" VALUETYPE="ref">
+</OBJECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement01.js b/LayoutTests/dom/html/level2/html/HTMLParamElement01.js
new file mode 100644
index 0000000..13a0388
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "param");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies the name of the run-time parameter.
+
+ Retrieve the name attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59871447
+*/
+function HTMLParamElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLParamElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "param");
+ nodeList = doc.getElementsByTagName("param");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","image3",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLParamElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLParamElement02-expected.txt
new file mode 100644
index 0000000..ea458cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement02.html b/LayoutTests/dom/html/level2/html/HTMLParamElement02.html
new file mode 100644
index 0000000..fa653bb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement02.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PARAM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLParamElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT>
+<PARAM NAME="image3" TYPE="image/gif" VALUE="image/file.gif" VALUETYPE="ref">
+</OBJECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement02.js b/LayoutTests/dom/html/level2/html/HTMLParamElement02.js
new file mode 100644
index 0000000..c300178
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "param");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The value attribute specifies the value of the run-time parameter.
+
+ Retrieve the value attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77971357
+*/
+function HTMLParamElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLParamElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "param");
+ nodeList = doc.getElementsByTagName("param");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvalue = testNode.value;
+
+ assertURIEquals("valueLink",null,null,null,"file.gif",null,null,null,null,vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLParamElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLParamElement03-expected.txt
new file mode 100644
index 0000000..29ce549
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement03.html b/LayoutTests/dom/html/level2/html/HTMLParamElement03.html
new file mode 100644
index 0000000..27fd3b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement03.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PARAM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLParamElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT>
+<PARAM NAME="image3" TYPE="image/gif" VALUE="image/file.gif" VALUETYPE="ref">
+</OBJECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement03.js b/LayoutTests/dom/html/level2/html/HTMLParamElement03.js
new file mode 100644
index 0000000..55aecbd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "param");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The valueType attribute specifies information about the meaning of the
+ value specified by the value attribute.
+
+ Retrieve the valueType attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23931872
+*/
+function HTMLParamElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLParamElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vvaluetype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "param");
+ nodeList = doc.getElementsByTagName("param");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvaluetype = testNode.valueType;
+
+ assertEquals("valueTypeLink","ref",vvaluetype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLParamElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLParamElement04-expected.txt
new file mode 100644
index 0000000..f974c32
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement04.html b/LayoutTests/dom/html/level2/html/HTMLParamElement04.html
new file mode 100644
index 0000000..50c6447
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement04.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PARAM</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLParamElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT>
+<PARAM NAME="image3" TYPE="image/gif" VALUE="image/file.gif" VALUETYPE="ref">
+</OBJECT>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLParamElement04.js b/LayoutTests/dom/html/level2/html/HTMLParamElement04.js
new file mode 100644
index 0000000..2298d5b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLParamElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "param");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the content type for the value attribute
+ when valuetype has the value ref.
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18179888
+*/
+function HTMLParamElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLParamElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "param");
+ nodeList = doc.getElementsByTagName("param");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","image/gif",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLParamElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLPreElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLPreElement01-expected.txt
new file mode 100644
index 0000000..545956e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLPreElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLPreElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLPreElement01.html b/LayoutTests/dom/html/level2/html/HTMLPreElement01.html
new file mode 100644
index 0000000..599ef28
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLPreElement01.html
@@ -0,0 +1,17 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - PRE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLPreElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<PRE WIDTH="277">The PRE is used to indicate pre-formatted text. Visual agents may:
+
+ leave white space intact.
+ May render text with a fixed-pitch font.
+ May disable automatic word wrap.
+ Must not disable bidirectional processing.
+</PRE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLPreElement01.js b/LayoutTests/dom/html/level2/html/HTMLPreElement01.js
new file mode 100644
index 0000000..4930c57
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLPreElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLPreElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "pre");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute specifies the fixed width for content.
+
+ Retrieve the width attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13894083
+*/
+function HTMLPreElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLPreElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "pre");
+ nodeList = doc.getElementsByTagName("pre");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink",277,vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLPreElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLQuoteElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLQuoteElement01-expected.txt
new file mode 100644
index 0000000..35f4505
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLQuoteElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLQuoteElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLQuoteElement01.html b/LayoutTests/dom/html/level2/html/HTMLQuoteElement01.html
new file mode 100644
index 0000000..5e94911
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLQuoteElement01.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - QUOTE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLQuoteElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<Q CITE="./files/Q.html">The Q element is intended for short quotations</Q>
+</P>
+<BLOCKQUOTE CITE="./files/BLOCKQUOTE.html">
+<P>The BLOCKQUOTE element is used for long quotations.</P>
+</BLOCKQUOTE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLQuoteElement01.js b/LayoutTests/dom/html/level2/html/HTMLQuoteElement01.js
new file mode 100644
index 0000000..1488b78
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLQuoteElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLQuoteElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "quote");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cite attribute specifies a URI designating a source document
+ or message.
+
+ Retrieve the cite attribute from the Q element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53895598
+*/
+function HTMLQuoteElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLQuoteElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcite;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "quote");
+ nodeList = doc.getElementsByTagName("q");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcite = testNode.cite;
+
+ assertURIEquals("citeLink",null,null,null,"Q.html",null,null,null,null,vcite);
+
+}
+
+
+
+
+function runTest() {
+ HTMLQuoteElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLQuoteElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLQuoteElement02-expected.txt
new file mode 100644
index 0000000..aaa29ba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLQuoteElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLQuoteElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLQuoteElement02.html b/LayoutTests/dom/html/level2/html/HTMLQuoteElement02.html
new file mode 100644
index 0000000..3db8fb8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLQuoteElement02.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - QUOTE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLQuoteElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<Q CITE="./files/Q.html">The Q element is intended for short quotations</Q>
+</P>
+<BLOCKQUOTE CITE="./files/BLOCKQUOTE.html">
+<P>The BLOCKQUOTE element is used for long quotations.</P>
+</BLOCKQUOTE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLQuoteElement02.js b/LayoutTests/dom/html/level2/html/HTMLQuoteElement02.js
new file mode 100644
index 0000000..bad574a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLQuoteElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLQuoteElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "quote");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cite attribute specifies a URI designating a source document
+ or message.
+
+ Retrieve the cite attribute from the BLOCKQUOTE element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53895598
+*/
+function HTMLQuoteElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLQuoteElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcite;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "quote");
+ nodeList = doc.getElementsByTagName("blockquote");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcite = testNode.cite;
+
+ assertURIEquals("citeLink",null,null,null,"BLOCKQUOTE.html",null,null,null,null,vcite);
+
+}
+
+
+
+
+function runTest() {
+ HTMLQuoteElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLScriptElement01-expected.txt
new file mode 100644
index 0000000..9d29562
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement01.html b/LayoutTests/dom/html/level2/html/HTMLScriptElement01.html
new file mode 100644
index 0000000..ac0fb71
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement01.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SCRIPT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLScriptElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<SCRIPT CHARSET="US-ASCII" TYPE="text/javaScript" DEFER="defer" SRC="./files/script1.js">var a=2;</SCRIPT>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement01.js b/LayoutTests/dom/html/level2/html/HTMLScriptElement01.js
new file mode 100644
index 0000000..36b4633
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "script");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The text attribute specifies the script content of the element.
+
+ Retrieve the text attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46872999
+*/
+function HTMLScriptElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLScriptElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vtext;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "script");
+ nodeList = doc.getElementsByTagName("script");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(3);
+ vtext = testNode.text;
+
+ assertEquals("textLink","var a=2;",vtext);
+
+}
+
+
+
+
+function runTest() {
+ HTMLScriptElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLScriptElement02-expected.txt
new file mode 100644
index 0000000..81ec033
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement02.html b/LayoutTests/dom/html/level2/html/HTMLScriptElement02.html
new file mode 100644
index 0000000..594a813
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement02.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SCRIPT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLScriptElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<SCRIPT CHARSET="US-ASCII" TYPE="text/javaScript" DEFER="defer" SRC="./files/script1.js">var a=2;</SCRIPT>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement02.js b/LayoutTests/dom/html/level2/html/HTMLScriptElement02.js
new file mode 100644
index 0000000..27bccb3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "script");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The charset attribute specifies the character encoding of the linked
+ resource.
+
+ Retrieve the charset attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35305677
+*/
+function HTMLScriptElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLScriptElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharset;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "script");
+ nodeList = doc.getElementsByTagName("script");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(3);
+ vcharset = testNode.charset;
+
+ assertEquals("charsetLink","US-ASCII",vcharset);
+
+}
+
+
+
+
+function runTest() {
+ HTMLScriptElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLScriptElement03-expected.txt
new file mode 100644
index 0000000..4436323
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement03.html b/LayoutTests/dom/html/level2/html/HTMLScriptElement03.html
new file mode 100644
index 0000000..7d85654
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement03.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SCRIPT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLScriptElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<SCRIPT CHARSET="US-ASCII" TYPE="text/javaScript" DEFER="defer" SRC="./files/script1.js">var a=2;</SCRIPT>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement03.js b/LayoutTests/dom/html/level2/html/HTMLScriptElement03.js
new file mode 100644
index 0000000..b7646d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "script");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The defer attribute specifies the user agent can defer processing of
+ the script.
+
+ Retrieve the defer attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93788534
+*/
+function HTMLScriptElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLScriptElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vdefer;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "script");
+ nodeList = doc.getElementsByTagName("script");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(3);
+ vdefer = testNode.defer;
+
+ assertTrue("deferLink",vdefer);
+
+}
+
+
+
+
+function runTest() {
+ HTMLScriptElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLScriptElement04-expected.txt
new file mode 100644
index 0000000..3d40d89
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement04.html b/LayoutTests/dom/html/level2/html/HTMLScriptElement04.html
new file mode 100644
index 0000000..940a211
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement04.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SCRIPT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLScriptElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<SCRIPT CHARSET="US-ASCII" TYPE="text/javaScript" DEFER="defer" SRC="./files/script1.js">var a=2;</SCRIPT>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement04.js b/LayoutTests/dom/html/level2/html/HTMLScriptElement04.js
new file mode 100644
index 0000000..0b06889
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement04.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "script");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The src attribute specifies a URI designating an external script.
+
+ Retrieve the src attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75147231
+*/
+function HTMLScriptElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLScriptElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vsrc;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "script");
+ nodeList = doc.getElementsByTagName("script");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(3);
+ vsrc = testNode.src;
+
+ assertURIEquals("srcLink",null,null,null,"script1.js",null,null,null,null,vsrc);
+
+}
+
+
+
+
+function runTest() {
+ HTMLScriptElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLScriptElement05-expected.txt
new file mode 100644
index 0000000..91a99ed
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement05.html b/LayoutTests/dom/html/level2/html/HTMLScriptElement05.html
new file mode 100644
index 0000000..0794f4a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement05.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SCRIPT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLScriptElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<SCRIPT CHARSET="US-ASCII" TYPE="text/javaScript" DEFER="defer" SRC="./files/script1.js">var a=2;</SCRIPT>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement05.js b/LayoutTests/dom/html/level2/html/HTMLScriptElement05.js
new file mode 100644
index 0000000..4228d26
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement05.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "script");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the content of the script language.
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30534818
+*/
+function HTMLScriptElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLScriptElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "script");
+ nodeList = doc.getElementsByTagName("script");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(3);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","text/javaScript",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLScriptElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLScriptElement06-expected.txt
new file mode 100644
index 0000000..18ce26f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement06.html b/LayoutTests/dom/html/level2/html/HTMLScriptElement06.html
new file mode 100644
index 0000000..825ed48
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement06.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SCRIPT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLScriptElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<SCRIPT CHARSET="US-ASCII" TYPE="text/javaScript" DEFER="defer" SRC="./files/script1.js">var a=2;</SCRIPT>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement06.js b/LayoutTests/dom/html/level2/html/HTMLScriptElement06.js
new file mode 100644
index 0000000..5944f5a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement06.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "script");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+htmlFor is described as for future use. Test accesses the value, but makes no assertions about its value.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66979266
+*/
+function HTMLScriptElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLScriptElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var htmlFor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "script");
+ nodeList = doc.getElementsByTagName("script");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(3);
+ htmlFor = testNode.htmlFor;
+
+
+}
+
+
+
+
+function runTest() {
+ HTMLScriptElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLScriptElement07-expected.txt
new file mode 100644
index 0000000..cde24e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement07.html b/LayoutTests/dom/html/level2/html/HTMLScriptElement07.html
new file mode 100644
index 0000000..382955f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement07.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SCRIPT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLScriptElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<SCRIPT CHARSET="US-ASCII" TYPE="text/javaScript" DEFER="defer" SRC="./files/script1.js">var a=2;</SCRIPT>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLScriptElement07.js b/LayoutTests/dom/html/level2/html/HTMLScriptElement07.js
new file mode 100644
index 0000000..96e6a12
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLScriptElement07.js
@@ -0,0 +1,109 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "script");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+event is described as for future use. Test accesses the value, but makes no assertions about its value.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-56700403
+*/
+function HTMLScriptElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLScriptElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var event;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "script");
+ nodeList = doc.getElementsByTagName("script");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(3);
+ event = testNode.event;
+
+
+}
+
+
+
+
+function runTest() {
+ HTMLScriptElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement01-expected.txt
new file mode 100644
index 0000000..894ab66
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement01.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement01.html
new file mode 100644
index 0000000..31e7d83
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement01.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement01.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement01.js
new file mode 100644
index 0000000..0dcb91a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement01.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute is the string "select-multiple" when multiple
+ attribute is true.
+
+ Retrieve the type attribute from the first SELECT element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58783172
+*/
+function HTMLSelectElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","select-multiple",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement02-expected.txt
new file mode 100644
index 0000000..af267ef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement02.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement02.html
new file mode 100644
index 0000000..4ecacf9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement02.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement02.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement02.js
new file mode 100644
index 0000000..112940f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The selectedIndex attribute specifies the ordinal index of the selected
+ option.
+
+ Retrieve the selectedIndex attribute from the first SELECT element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85676760
+*/
+function HTMLSelectElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vselectedindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vselectedindex = testNode.selectedIndex;
+
+ assertEquals("selectedIndexLink",0,vselectedindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement03-expected.txt
new file mode 100644
index 0000000..633e08b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement03.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement03.html
new file mode 100644
index 0000000..aa35c12
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement03.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement03.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement03.js
new file mode 100644
index 0000000..0ac4c13
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement03.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The selectedIndex attribute specifies the ordinal index of the selected
+ option. If no element is selected -1 is returned.
+
+ Retrieve the selectedIndex attribute from the second SELECT element and
+ examine its value.
+
+ Per http://www.w3.org/TR/html401/interact/forms.html#h-17.6.1,
+ without an explicit selected attribute, user agent behavior is
+ undefined. There is no way to coerce no option to be selected.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85676760
+*/
+function HTMLSelectElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vselectedindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vselectedindex = testNode.selectedIndex;
+
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement04-expected.txt
new file mode 100644
index 0000000..d79e570
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement04.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement04.html
new file mode 100644
index 0000000..c2e4c65
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement04.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement04.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement04.js
new file mode 100644
index 0000000..c9cf5f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The value attribute specifies the current form control value.
+
+ Retrieve the value attribute from the first SELECT element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59351919
+*/
+function HTMLSelectElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vvalue = testNode.value;
+
+ assertEquals("valueLink","EMP1",vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement05-expected.txt
new file mode 100644
index 0000000..64f9a1f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement05.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement05.html
new file mode 100644
index 0000000..9459b37
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement05.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement05.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement05.js
new file mode 100644
index 0000000..ae5bff6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement05.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The length attribute specifies the number of options in this select.
+
+ Retrieve the length attribute from the first SELECT element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5933486
+*/
+function HTMLSelectElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vlength;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vlength = testNode.length;
+
+ assertEquals("lengthLink",5,vlength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement06-expected.txt
new file mode 100644
index 0000000..d138efb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement06.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement06.html
new file mode 100644
index 0000000..fd076a6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement06.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement06.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement06.js
new file mode 100644
index 0000000..555b518
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement06.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute from the first SELECT element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20489458
+*/
+function HTMLSelectElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var fNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("formLink","form1",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement07-expected.txt
new file mode 100644
index 0000000..11f9ee7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement07.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement07.html
new file mode 100644
index 0000000..b9b1008
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement07.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement07.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement07.js
new file mode 100644
index 0000000..edd93e4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ a form.
+
+ Retrieve the second SELECT element and
+ examine its form element.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20489458
+*/
+function HTMLSelectElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement08-expected.txt
new file mode 100644
index 0000000..cbf1e52
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement08.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement08.html
new file mode 100644
index 0000000..e19fca3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement08.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement08.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement08.js
new file mode 100644
index 0000000..e4dd33b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement08.js
@@ -0,0 +1,134 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The options attribute returns a collection of OPTION elements contained
+ by this element.
+
+ Retrieve the options attribute from the first SELECT element and
+ examine the items of the returned collection.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30606413
+*/
+function HTMLSelectElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement08") != null) return;
+ var nodeList;
+ var optionsnodeList;
+ var testNode;
+ var vareas;
+ var doc;
+ var optionName;
+ var voption;
+ var result = new Array();
+
+ expectedOptions = new Array();
+ expectedOptions[0] = "option";
+ expectedOptions[1] = "option";
+ expectedOptions[2] = "option";
+ expectedOptions[3] = "option";
+ expectedOptions[4] = "option";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ optionsnodeList = testNode.options;
+
+ for(var indexN10070 = 0;indexN10070 < optionsnodeList.length; indexN10070++) {
+ voption = optionsnodeList.item(indexN10070);
+ optionName = voption.nodeName;
+
+ result[result.length] = optionName;
+
+ }
+ assertEqualsListAutoCase("element", "optionsLink",expectedOptions,result);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement09-expected.txt
new file mode 100644
index 0000000..2f4486d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement09.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement09.html
new file mode 100644
index 0000000..2eb22ad
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement09.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement09.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement09.js
new file mode 100644
index 0000000..ac9baac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement09.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The disabled attribute indicates that this control is not available
+ within this context.
+
+ Retrieve the disabled attribute from the third SELECT element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79102918
+*/
+function HTMLSelectElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(2);
+ vdisabled = testNode.disabled;
+
+ assertTrue("disabledLink",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement10-expected.txt
new file mode 100644
index 0000000..cf8c779
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement10.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement10.html
new file mode 100644
index 0000000..0206d15
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement10.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement10.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement10.js
new file mode 100644
index 0000000..00082f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The multiple attribute(if true) indicates that multiple OPTION elements
+ may be selected
+
+ Retrieve the multiple attribute from the first SELECT element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13246613
+*/
+function HTMLSelectElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vmultiple;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vmultiple = testNode.multiple;
+
+ assertTrue("multipleLink",vmultiple);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement11-expected.txt
new file mode 100644
index 0000000..7453eac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement11.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement11.html
new file mode 100644
index 0000000..ab2a20b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement11.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement11.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement11.js
new file mode 100644
index 0000000..f42acaa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement11.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies the form control or object name when
+ submitted with a form.
+
+ Retrieve the name attribute from the first SELECT element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41636323
+*/
+function HTMLSelectElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","select1",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement12-expected.txt
new file mode 100644
index 0000000..a43f07c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement12.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement12.html
new file mode 100644
index 0000000..129205d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement12.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement12.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement12.js
new file mode 100644
index 0000000..a412f8a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement12.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The size attribute specifies the number of visible rows.
+
+ Retrieve the size attribute from the first SELECT element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18293826
+*/
+function HTMLSelectElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vsize;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vsize = testNode.size;
+
+ assertEquals("sizeLink",1,vsize);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement13-expected.txt
new file mode 100644
index 0000000..8c4193b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement13.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement13.html
new file mode 100644
index 0000000..5a6007a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement13.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement13.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement13.js
new file mode 100644
index 0000000..b1e6599
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement13.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tabIndex attribute specifies an index that represents the elements
+ position in the tabbing order.
+
+ Retrieve the tabIndex attribute from the first SELECT element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40676705
+*/
+function HTMLSelectElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement13") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",7,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement14-expected.txt
new file mode 100644
index 0000000..aa292fd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement14.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement14.html
new file mode 100644
index 0000000..830dbd5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement14.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement14.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement14.js
new file mode 100644
index 0000000..52d3812
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement14.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+focus should give the select element input focus.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32130014
+*/
+function HTMLSelectElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement14") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ testNode.focus();
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement15-expected.txt
new file mode 100644
index 0000000..cc83faf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement15.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement15.html
new file mode 100644
index 0000000..acc458a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement15.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement15.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement15.js
new file mode 100644
index 0000000..d8a5b0c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement15.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+blur should surrender input focus.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-28216144
+*/
+function HTMLSelectElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement15") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ testNode.blur();
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement16-expected.txt
new file mode 100644
index 0000000..8df5d3a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement16.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement16.html
new file mode 100644
index 0000000..1fc089c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement16.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement16.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement16.js
new file mode 100644
index 0000000..e0e6c11
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement16.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Removes an option using HTMLSelectElement.remove.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33404570
+*/
+function HTMLSelectElement16() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement16") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+ var optLength;
+ var selected;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ testNode.remove(0);
+ optLength = testNode.length;
+
+ assertEquals("optLength",4,optLength);
+ selected = testNode.selectedIndex;
+
+ assertEquals("selected",-1,selected);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement17-expected.txt
new file mode 100644
index 0000000..895af8d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement17.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement17.html
new file mode 100644
index 0000000..41b0a34
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement17.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement17.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement17.js
new file mode 100644
index 0000000..e7a4ef8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement17.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Removes a non-existant option using HTMLSelectElement.remove.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33404570
+*/
+function HTMLSelectElement17() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement17") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+ var optLength;
+ var selected;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ testNode.remove(6);
+ optLength = testNode.length;
+
+ assertEquals("optLength",5,optLength);
+ selected = testNode.selectedIndex;
+
+ assertEquals("selected",0,selected);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement18-expected.txt
new file mode 100644
index 0000000..40770eb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement18.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement18.html
new file mode 100644
index 0000000..2666267
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement18.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement18.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement18.js
new file mode 100644
index 0000000..0a05d2a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement18.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Add a new option at the end of an select using HTMLSelectElement.add.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14493106
+*/
+function HTMLSelectElement18() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement18") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+ var optLength;
+ var selected;
+ var newOpt;
+ var newOptText;
+ var opt;
+ var optText;
+ var optValue;
+ var retNode;
+ var nullNode = null;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ newOpt = doc.createElement("option");
+ newOptText = doc.createTextNode("EMP31415");
+ retNode = newOpt.appendChild(newOptText);
+ testNode.add(newOpt,nullNode);
+ optLength = testNode.length;
+
+ assertEquals("optLength",6,optLength);
+ selected = testNode.selectedIndex;
+
+ assertEquals("selected",0,selected);
+ opt = testNode.lastChild;
+
+ optText = opt.firstChild;
+
+ optValue = optText.nodeValue;
+
+ assertEquals("lastValue","EMP31415",optValue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement19-expected.txt
new file mode 100644
index 0000000..6716ed0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement19.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement19.html
new file mode 100644
index 0000000..1c87cca
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement19.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement19.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement19.js
new file mode 100644
index 0000000..5261474
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement19.js
@@ -0,0 +1,137 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Add a new option before the selected node using HTMLSelectElement.add.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14493106
+*/
+function HTMLSelectElement19() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement19") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+ var optLength;
+ var selected;
+ var newOpt;
+ var newOptText;
+ var opt;
+ var optText;
+ var optValue;
+ var retNode;
+ var options;
+ var selectedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ newOpt = doc.createElement("option");
+ newOptText = doc.createTextNode("EMP31415");
+ retNode = newOpt.appendChild(newOptText);
+ options = testNode.options;
+
+ selectedNode = options.item(0);
+ testNode.add(newOpt,selectedNode);
+ optLength = testNode.length;
+
+ assertEquals("optLength",6,optLength);
+ selected = testNode.selectedIndex;
+
+ assertEquals("selected",1,selected);
+ options = testNode.options;
+
+ opt = options.item(0);
+ optText = opt.firstChild;
+
+ optValue = optText.nodeValue;
+
+ assertEquals("lastValue","EMP31415",optValue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLSelectElement20-expected.txt
new file mode 100644
index 0000000..2129655
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement20.html b/LayoutTests/dom/html/level2/html/HTMLSelectElement20.html
new file mode 100644
index 0000000..ac516b5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement20.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLSelectElement20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7" NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected" value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled" TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLSelectElement20.js b/LayoutTests/dom/html/level2/html/HTMLSelectElement20.js
new file mode 100644
index 0000000..9482e23
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLSelectElement20.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "select");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Attempting to add an new option using HTMLSelectElement.add before a node that is not a child of the select
+element should raise a NOT_FOUND_ERR.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-14493106
+*/
+function HTMLSelectElement20() {
+ var success;
+ if(checkInitialization(builder, "HTMLSelectElement20") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+ var optLength;
+ var selected;
+ var newOpt;
+ var newOptText;
+ var retNode;
+ var options;
+ var otherSelect;
+ var selectedNode;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "select");
+ nodeList = doc.getElementsByTagName("select");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ otherSelect = nodeList.item(1);
+ newOpt = doc.createElement("option");
+ newOptText = doc.createTextNode("EMP31415");
+ retNode = newOpt.appendChild(newOptText);
+ options = otherSelect.options;
+
+ selectedNode = options.item(0);
+
+ {
+ success = false;
+ try {
+ testNode.add(newOpt,selectedNode);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 8);
+ }
+ assertTrue("throw_NOT_FOUND_ERR",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLSelectElement20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLStyleElement01-expected.txt
new file mode 100644
index 0000000..86b765d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement01.html b/LayoutTests/dom/html/level2/html/HTMLStyleElement01.html
new file mode 100644
index 0000000..18f7521
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<STYLE MEDIA="screen" type="text/css"></STYLE>
+<TITLE>NIST DOM HTML Test - STYLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLStyleElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>Hello, World.</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement01.js b/LayoutTests/dom/html/level2/html/HTMLStyleElement01.js
new file mode 100644
index 0000000..8095428
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "style");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The disabled attribute enables/disables the stylesheet.
+
+ Retrieve the disabled attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-51162010
+*/
+function HTMLStyleElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLStyleElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "style");
+ nodeList = doc.getElementsByTagName("style");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vdisabled = testNode.disabled;
+
+ assertFalse("disabledLink",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ HTMLStyleElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLStyleElement02-expected.txt
new file mode 100644
index 0000000..85c7b3e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement02.html b/LayoutTests/dom/html/level2/html/HTMLStyleElement02.html
new file mode 100644
index 0000000..a124aa9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement02.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<STYLE MEDIA="screen" type="text/css"></STYLE>
+<TITLE>NIST DOM HTML Test - STYLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLStyleElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>Hello, World.</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement02.js b/LayoutTests/dom/html/level2/html/HTMLStyleElement02.js
new file mode 100644
index 0000000..69fb869
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "style");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The media attribute identifies the intended medium of the style info.
+
+ Retrieve the media attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76412738
+*/
+function HTMLStyleElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLStyleElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vmedia;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "style");
+ nodeList = doc.getElementsByTagName("style");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vmedia = testNode.media;
+
+ assertEquals("mediaLink","screen",vmedia);
+
+}
+
+
+
+
+function runTest() {
+ HTMLStyleElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLStyleElement03-expected.txt
new file mode 100644
index 0000000..7432711
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement03.html b/LayoutTests/dom/html/level2/html/HTMLStyleElement03.html
new file mode 100644
index 0000000..ceb3cda
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement03.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<STYLE MEDIA="screen" type="text/css"></STYLE>
+<TITLE>NIST DOM HTML Test - STYLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLStyleElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>Hello, World.</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLStyleElement03.js b/LayoutTests/dom/html/level2/html/HTMLStyleElement03.js
new file mode 100644
index 0000000..15ec797
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLStyleElement03.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "style");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the style sheet language(Internet media type).
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22472002
+*/
+function HTMLStyleElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLStyleElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "style");
+ nodeList = doc.getElementsByTagName("style");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","text/css",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLStyleElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01-expected.txt
new file mode 100644
index 0000000..b9a3895
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCaptionElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01.html b/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01.html
new file mode 100644
index 0000000..d2f21cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECAPTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCaptionElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<CAPTION ALIGN="top">CAPTION 1</CAPTION>
+<TR>
+<TH>Employee Id</TH>
+<TH>Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01.js b/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01.js
new file mode 100644
index 0000000..3231c17
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCaptionElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCaptionElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecaption");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the caption alignment with respect to
+ the table.
+
+ Retrieve the align attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79875068
+*/
+function HTMLTableCaptionElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCaptionElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecaption");
+ nodeList = doc.getElementsByTagName("caption");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","top",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCaptionElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement01-expected.txt
new file mode 100644
index 0000000..8f26ebd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement01.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement01.html
new file mode 100644
index 0000000..ddb18da
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement01.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement01.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement01.js
new file mode 100644
index 0000000..c9bde4a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cellIndex attribute specifies the index of this cell in the row(TH).
+
+ Retrieve the cellIndex attribute of the first TH element and examine its
+ value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363
+*/
+function HTMLTableCellElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcellindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(0);
+ vcellindex = testNode.cellIndex;
+
+ assertEquals("cellIndexLink",0,vcellindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement02-expected.txt
new file mode 100644
index 0000000..1ffb2b4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement02.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement02.html
new file mode 100644
index 0000000..e1efe74
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement02.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement02.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement02.js
new file mode 100644
index 0000000..e62b169
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement02.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cellIndex attribute specifies the index of this cell in the row(TD).
+
+ Retrieve the cellIndex attribute of the first TD element and examine its
+ value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363
+*/
+function HTMLTableCellElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcellindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(0);
+ vcellindex = testNode.cellIndex;
+
+ assertEquals("cellIndexLink",0,vcellindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement03-expected.txt
new file mode 100644
index 0000000..a4aa7f2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement03.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement03.html
new file mode 100644
index 0000000..5d45780
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement03.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement03.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement03.js
new file mode 100644
index 0000000..97c990c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement03.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The abbr attribute specifies the abbreviation for table header cells(TH).
+
+ Retrieve the abbr attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037
+*/
+function HTMLTableCellElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vabbr;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vabbr = testNode.abbr;
+
+ assertEquals("abbrLink","hd1",vabbr);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement04-expected.txt
new file mode 100644
index 0000000..b44301c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement04.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement04.html
new file mode 100644
index 0000000..1ac7df9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement04.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement04.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement04.js
new file mode 100644
index 0000000..4f444b0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement04.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The abbr attribute specifies the abbreviation for table data cells(TD).
+
+ Retrieve the abbr attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037
+*/
+function HTMLTableCellElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vabbr;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vabbr = testNode.abbr;
+
+ assertEquals("abbrLink","hd2",vabbr);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement05-expected.txt
new file mode 100644
index 0000000..a83da20
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement05.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement05.html
new file mode 100644
index 0000000..ae92d98
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement05.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement05.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement05.js
new file mode 100644
index 0000000..77e5153
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement05.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal alignment for table
+ header cells(TH).
+
+ Retrieve the align attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879
+*/
+function HTMLTableCellElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement06-expected.txt
new file mode 100644
index 0000000..e93474c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement06.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement06.html
new file mode 100644
index 0000000..896dd32
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement06.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement06.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement06.js
new file mode 100644
index 0000000..3e05bcb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal alignment for table
+ data cells(TD).
+
+ Retrieve the align attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879
+*/
+function HTMLTableCellElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement07-expected.txt
new file mode 100644
index 0000000..f7a68f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement07.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement07.html
new file mode 100644
index 0000000..16cc552
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement07.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement07.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement07.js
new file mode 100644
index 0000000..01e4d9b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The axis attribute specifies the names group of related headers for table
+ header cells(TH).
+
+ Retrieve the align attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418
+*/
+function HTMLTableCellElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vaxis;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vaxis = testNode.axis;
+
+ assertEquals("axisLink","center",vaxis);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement08-expected.txt
new file mode 100644
index 0000000..8fce5fe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement08.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement08.html
new file mode 100644
index 0000000..c409915
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement08.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement08.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement08.js
new file mode 100644
index 0000000..0d24718
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement08.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The axis attribute specifies the names group of related headers for table
+ data cells(TD).
+
+ Retrieve the axis attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418
+*/
+function HTMLTableCellElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vaxis;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vaxis = testNode.axis;
+
+ assertEquals("axisLink","center",vaxis);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement09-expected.txt
new file mode 100644
index 0000000..e87f1a5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement09.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement09.html
new file mode 100644
index 0000000..48d8070
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement09.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement09.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement09.js
new file mode 100644
index 0000000..03d95e1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement09.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The bgColor attribute specifies the cells background color for
+ table header cells(TH).
+
+ Retrieve the bgColor attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431
+*/
+function HTMLTableCellElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vbgcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vbgcolor = testNode.bgColor;
+
+ assertEquals("bgColorLink","#00FFFF".toLowerCase(),vbgcolor.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement10-expected.txt
new file mode 100644
index 0000000..33d3b4d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement10.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement10.html
new file mode 100644
index 0000000..77e38e8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement10.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement10.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement10.js
new file mode 100644
index 0000000..edaf990
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The bgColor attribute specifies the cells background color for table
+ data cells(TD).
+
+ Retrieve the bgColor attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431
+*/
+function HTMLTableCellElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vbgcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vbgcolor = testNode.bgColor;
+
+ assertEquals("bgColorLink","#FF0000".toLowerCase(),vbgcolor.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement11-expected.txt
new file mode 100644
index 0000000..84c1f65
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement11.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement11.html
new file mode 100644
index 0000000..61347f0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement11.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement11.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement11.js
new file mode 100644
index 0000000..04028b1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement11.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The char attribute specifies the alignment character for cells in a column
+ of table header cells(TH).
+
+ Retrieve the char attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780
+*/
+function HTMLTableCellElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vch = testNode.ch;
+
+ assertEquals("chLink",":",vch);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement12-expected.txt
new file mode 100644
index 0000000..b6e5b05
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement12.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement12.html
new file mode 100644
index 0000000..8d072e8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement12.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement12.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement12.js
new file mode 100644
index 0000000..f3c9aac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement12.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The char attribute specifies the alignment character for cells in a column
+ of table data cells(TD).
+
+ Retrieve the char attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780
+*/
+function HTMLTableCellElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vch = testNode.ch;
+
+ assertEquals("chLink",":",vch);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement13-expected.txt
new file mode 100644
index 0000000..45dce28
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement13.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement13.html
new file mode 100644
index 0000000..01d78c9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement13.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement13.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement13.js
new file mode 100644
index 0000000..5aede55
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement13.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The charoff attribute specifies the offset of alignment characacter
+ of table header cells(TH).
+
+ Retrieve the charoff attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310
+*/
+function HTMLTableCellElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement13") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vcharoff = testNode.chOff;
+
+ assertEquals("chOffLink","1",vcharoff);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement14-expected.txt
new file mode 100644
index 0000000..ab2f4e4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement14.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement14.html
new file mode 100644
index 0000000..3a09217
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement14.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement14.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement14.js
new file mode 100644
index 0000000..f995b4f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement14.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The charoff attribute specifies the offset of alignment character
+ of table data cells(TD).
+
+ Retrieve the charoff attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310
+*/
+function HTMLTableCellElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement14") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vcharoff = testNode.chOff;
+
+ assertEquals("chOffLink","1",vcharoff);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement15-expected.txt
new file mode 100644
index 0000000..058c22b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement15.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement15.html
new file mode 100644
index 0000000..c1b7237
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement15.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement15.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement15.js
new file mode 100644
index 0000000..49f1c31
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement15.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The colSpan attribute specifies the number of columns spanned by a table
+ header(TH) cell.
+
+ Retrieve the colspan attribute of the second TH element and examine its
+ value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244
+*/
+function HTMLTableCellElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement15") != null) return;
+ var nodeList;
+ var testNode;
+ var vcolspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vcolspan = testNode.colSpan;
+
+ assertEquals("colSpanLink",1,vcolspan);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement16-expected.txt
new file mode 100644
index 0000000..e26f5aa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement16.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement16.html
new file mode 100644
index 0000000..c264a72
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement16.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement16.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement16.js
new file mode 100644
index 0000000..8544171
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement16.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The colSpan attribute specifies the number of columns spanned by a
+ table data(TD) cell.
+
+ Retrieve the colSpan attribute of the second TD element and examine its
+ value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244
+*/
+function HTMLTableCellElement16() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement16") != null) return;
+ var nodeList;
+ var testNode;
+ var vcolspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vcolspan = testNode.colSpan;
+
+ assertEquals("colSpanLink",1,vcolspan);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement17-expected.txt
new file mode 100644
index 0000000..b0df383
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement17.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement17.html
new file mode 100644
index 0000000..3a43a32
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement17.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement17.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement17.js
new file mode 100644
index 0000000..15e60c8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement17.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The headers attribute specifies a list of id attribute values for
+ table header cells(TH).
+
+ Retrieve the headers attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817
+*/
+function HTMLTableCellElement17() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement17") != null) return;
+ var nodeList;
+ var testNode;
+ var vheaders;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vheaders = testNode.headers;
+
+ assertEquals("headersLink","header-1",vheaders);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement18-expected.txt
new file mode 100644
index 0000000..42a1c6f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement18.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement18.html
new file mode 100644
index 0000000..3394cae
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement18.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement18.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement18.js
new file mode 100644
index 0000000..c57c015
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement18.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The headers attribute specifies a list of id attribute values for
+ table data cells(TD).
+
+ Retrieve the headers attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817
+*/
+function HTMLTableCellElement18() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement18") != null) return;
+ var nodeList;
+ var testNode;
+ var vheaders;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vheaders = testNode.headers;
+
+ assertEquals("headersLink","header-3",vheaders);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement19-expected.txt
new file mode 100644
index 0000000..4311f8b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement19.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement19.html
new file mode 100644
index 0000000..d20dad0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement19.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement19.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement19.js
new file mode 100644
index 0000000..6ccc886
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement19.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The height attribute specifies the cell height.
+
+ Retrieve the height attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212
+*/
+function HTMLTableCellElement19() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement19") != null) return;
+ var nodeList;
+ var testNode;
+ var vheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vheight = testNode.height;
+
+ assertEquals("heightLink","50",vheight);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement20-expected.txt
new file mode 100644
index 0000000..cbc322d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement20.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement20.html
new file mode 100644
index 0000000..9ac678d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement20.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement20.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement20.js
new file mode 100644
index 0000000..cde6795
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement20.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The height attribute specifies the cell height.
+
+ Retrieve the height attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212
+*/
+function HTMLTableCellElement20() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement20") != null) return;
+ var nodeList;
+ var testNode;
+ var vheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vheight = testNode.height;
+
+ assertEquals("heightLink","50",vheight);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement21-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement21-expected.txt
new file mode 100644
index 0000000..a142949
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement21-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement21
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement21.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement21.html
new file mode 100644
index 0000000..3c7aa23
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement21.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement21.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement21.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement21.js
new file mode 100644
index 0000000..480f2a4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement21.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement21";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The noWrap attribute supresses word wrapping.
+
+ Retrieve the noWrap attribute of the second TH Element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045
+*/
+function HTMLTableCellElement21() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement21") != null) return;
+ var nodeList;
+ var testNode;
+ var vnowrap;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vnowrap = testNode.noWrap;
+
+ assertTrue("noWrapLink",vnowrap);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement21();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement22-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement22-expected.txt
new file mode 100644
index 0000000..0484cf0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement22-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement22
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement22.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement22.html
new file mode 100644
index 0000000..28fdd78
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement22.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement22.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement22.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement22.js
new file mode 100644
index 0000000..1a17786
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement22.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement22";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The noWrap attribute supresses word wrapping.
+
+ Retrieve the noWrap attribute of the second TD Element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045
+*/
+function HTMLTableCellElement22() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement22") != null) return;
+ var nodeList;
+ var testNode;
+ var vnowrap;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vnowrap = testNode.noWrap;
+
+ assertTrue("noWrapLink",vnowrap);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement22();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement23-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement23-expected.txt
new file mode 100644
index 0000000..b22d469
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement23-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement23
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement23.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement23.html
new file mode 100644
index 0000000..ee532ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement23.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement23.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement23.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement23.js
new file mode 100644
index 0000000..3269b1b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement23.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement23";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rowSpan attribute specifies the number of rows spanned by a table
+ header(TH) cell.
+
+ Retrieve the rowSpan attribute of the second TH element and examine its
+ value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625
+*/
+function HTMLTableCellElement23() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement23") != null) return;
+ var nodeList;
+ var testNode;
+ var vrowspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vrowspan = testNode.rowSpan;
+
+ assertEquals("rowSpanLink",1,vrowspan);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement23();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement24-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement24-expected.txt
new file mode 100644
index 0000000..fea281e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement24-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement24
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement24.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement24.html
new file mode 100644
index 0000000..cf03994
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement24.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement24.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement24.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement24.js
new file mode 100644
index 0000000..eb3ad5a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement24.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement24";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rowSpan attribute specifies the number of rows spanned by a
+ table data(TD) cell.
+
+ Retrieve the rowSpan attribute of the second TD element and examine its
+ value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625
+*/
+function HTMLTableCellElement24() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement24") != null) return;
+ var nodeList;
+ var testNode;
+ var vrowspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vrowspan = testNode.rowSpan;
+
+ assertEquals("rowSpanLink",1,vrowspan);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement24();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement25-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement25-expected.txt
new file mode 100644
index 0000000..2bf41e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement25-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement25
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement25.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement25.html
new file mode 100644
index 0000000..9e7c7d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement25.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement25.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement25.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement25.js
new file mode 100644
index 0000000..96cfb7f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement25.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement25";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The scope attribute specifies the scope covered by header cells.
+
+ Retrieve the scope attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952
+*/
+function HTMLTableCellElement25() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement25") != null) return;
+ var nodeList;
+ var testNode;
+ var vscope;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vscope = testNode.scope;
+
+ assertEquals("scopeLink","col",vscope);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement25();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement26-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement26-expected.txt
new file mode 100644
index 0000000..9680546
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement26-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement26
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement26.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement26.html
new file mode 100644
index 0000000..7143737
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement26.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement26.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement26.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement26.js
new file mode 100644
index 0000000..f1b0495
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement26.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement26";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The scope attribute specifies the scope covered by data cells.
+
+ Retrieve the scope attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952
+*/
+function HTMLTableCellElement26() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement26") != null) return;
+ var nodeList;
+ var testNode;
+ var vscope;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vscope = testNode.scope;
+
+ assertEquals("scopeLink","col",vscope);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement26();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement27-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement27-expected.txt
new file mode 100644
index 0000000..40fcd7d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement27-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement27
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement27.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement27.html
new file mode 100644
index 0000000..5948b5e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement27.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement27.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement27.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement27.js
new file mode 100644
index 0000000..bd3718e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement27.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement27";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vAlign attribute specifies the vertical alignment of data in cell.
+
+ Retrieve the vAlign attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221
+*/
+function HTMLTableCellElement27() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement27") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement27();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement28-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement28-expected.txt
new file mode 100644
index 0000000..c74e1a6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement28-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement28
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement28.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement28.html
new file mode 100644
index 0000000..d4dc385
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement28.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement28.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement28.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement28.js
new file mode 100644
index 0000000..df63b24
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement28.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement28";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vAlign attribute specifies the vertical alignment of data in cell.
+
+ Retrieve the vAlign attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221
+*/
+function HTMLTableCellElement28() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement28") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement28();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement29-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement29-expected.txt
new file mode 100644
index 0000000..5b8935d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement29-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement29
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement29.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement29.html
new file mode 100644
index 0000000..851fe5e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement29.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement29.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement29.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement29.js
new file mode 100644
index 0000000..3eea685
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement29.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement29";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute specifies the cells width.
+
+ Retrieve the width attribute from the second TH element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795
+*/
+function HTMLTableCellElement29() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement29") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("th");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","170",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement29();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement30-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableCellElement30-expected.txt
new file mode 100644
index 0000000..b968119
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement30-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement30
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement30.html b/LayoutTests/dom/html/level2/html/HTMLTableCellElement30.html
new file mode 100644
index 0000000..a4d8dd8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement30.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableCellElement30.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableCellElement30.js b/LayoutTests/dom/html/level2/html/HTMLTableCellElement30.js
new file mode 100644
index 0000000..a5991d5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableCellElement30.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement30";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute specifies the cells width.
+
+ Retrieve the width attribute from the second TD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795
+*/
+function HTMLTableCellElement30() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableCellElement30") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","175",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableCellElement30();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement01-expected.txt
new file mode 100644
index 0000000..a3f8679
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement01.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement01.html
new file mode 100644
index 0000000..d04ea56
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement01.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement01.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement01.js
new file mode 100644
index 0000000..c55199a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement01.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal alignment of cell data
+ in column(COL).
+
+ Retrieve the align attribute from the COL element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31128447
+*/
+function HTMLTableColElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement02-expected.txt
new file mode 100644
index 0000000..d323e3f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement02.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement02.html
new file mode 100644
index 0000000..ec6cf2c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement02.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement02.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement02.js
new file mode 100644
index 0000000..ea95caf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal alignment of cell data
+ in column(COLGROUP).
+
+ Retrieve the align attribute from the COLGROUP element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31128447
+*/
+function HTMLTableColElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("colgroup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement03-expected.txt
new file mode 100644
index 0000000..5a0dd65
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement03.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement03.html
new file mode 100644
index 0000000..99725f6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement03.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement03.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement03.js
new file mode 100644
index 0000000..36093c6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement03.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The char attribute specifies the alignment character for cells
+ in a column(COL).
+
+ Retrieve the char attribute from the COL element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9447412
+*/
+function HTMLTableColElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vch = testNode.ch;
+
+ assertEquals("chLink","*",vch);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement04-expected.txt
new file mode 100644
index 0000000..c62c59b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement04.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement04.html
new file mode 100644
index 0000000..341a267
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement04.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement04.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement04.js
new file mode 100644
index 0000000..84370b5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The char attribute specifies the alignment character for cells
+ in a column(COLGROUP).
+
+ Retrieve the char attribute from the COLGROUP element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9447412
+*/
+function HTMLTableColElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("colgroup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vch = testNode.ch;
+
+ assertEquals("chLink","$",vch);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement05-expected.txt
new file mode 100644
index 0000000..2fcfcba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement05.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement05.html
new file mode 100644
index 0000000..b9ef744
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement05.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement05.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement05.js
new file mode 100644
index 0000000..f89286f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement05.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The charoff attribute specifies offset of alignment character(COL).
+
+ Retrieve the charoff attribute from the COL element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57779225
+*/
+function HTMLTableColElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vchoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vchoff = testNode.chOff;
+
+ assertEquals("chLink","20",vchoff);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement06-expected.txt
new file mode 100644
index 0000000..6d1f95d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement06.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement06.html
new file mode 100644
index 0000000..8023058
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement06.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement06.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement06.js
new file mode 100644
index 0000000..2389852
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement06.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The charoff attribute specifies offset of alignment character(COLGROUP).
+
+ Retrieve the charoff attribute from the COLGROUP element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57779225
+*/
+function HTMLTableColElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vchoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("colgroup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vchoff = testNode.chOff;
+
+ assertEquals("chLink","15",vchoff);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement07-expected.txt
new file mode 100644
index 0000000..ed9a372
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement07.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement07.html
new file mode 100644
index 0000000..403e001
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement07.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement07.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement07.js
new file mode 100644
index 0000000..580e907
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The span attribute indicates the number of columns in a group or affected
+ by a grouping(COL).
+
+ Retrieve the span attribute of the COL element and examine its
+ value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335
+*/
+function HTMLTableColElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vspan = testNode.span;
+
+ assertEquals("spanLink",1,vspan);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement08-expected.txt
new file mode 100644
index 0000000..f0b3e5a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement08.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement08.html
new file mode 100644
index 0000000..9d36526
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement08.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement08.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement08.js
new file mode 100644
index 0000000..46b444e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement08.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The span attribute indicates the number of columns in a group or affected
+ by a grouping(COLGROUP).
+
+ Retrieve the span attribute of the COLGROUP element and examine its
+ value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335
+*/
+function HTMLTableColElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("colgroup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vspan = testNode.span;
+
+ assertEquals("spanLink",2,vspan);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement09-expected.txt
new file mode 100644
index 0000000..41634fc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement09.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement09.html
new file mode 100644
index 0000000..a1710a5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement09.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement09.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement09.js
new file mode 100644
index 0000000..5581fe4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement09.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vAlign attribute specifies the vertical alignment of cell data
+ in column(COL).
+
+ Retrieve the vAlign attribute from the COL element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710
+*/
+function HTMLTableColElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement10-expected.txt
new file mode 100644
index 0000000..c25f12c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement10.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement10.html
new file mode 100644
index 0000000..511af56
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement10.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement10.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement10.js
new file mode 100644
index 0000000..ea46dfc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vAlign attribute specifies the vertical alignment of cell data
+ in column(COLGROUP).
+
+ Retrieve the vAlign attribute from the COLGROUP element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710
+*/
+function HTMLTableColElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("colgroup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement11-expected.txt
new file mode 100644
index 0000000..700f44d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement11.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement11.html
new file mode 100644
index 0000000..fb8d57d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement11.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement11.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement11.js
new file mode 100644
index 0000000..6a68d3d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement11.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute specifies the default column width(COL).
+
+ Retrieve the width attribute from the COL element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799
+*/
+function HTMLTableColElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","20",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableColElement12-expected.txt
new file mode 100644
index 0000000..fb737dc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement12.html b/LayoutTests/dom/html/level2/html/HTMLTableColElement12.html
new file mode 100644
index 0000000..708ac6f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement12.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableColElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableColElement12.js b/LayoutTests/dom/html/level2/html/HTMLTableColElement12.js
new file mode 100644
index 0000000..cacdb3d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableColElement12.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute specifies the default column width(COLGORUP).
+
+ Retrieve the width attribute from the COLGROUP element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799
+*/
+function HTMLTableColElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableColElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("colgroup");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","20",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableColElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement01-expected.txt
new file mode 100644
index 0000000..0847599
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement01.html b/LayoutTests/dom/html/level2/html/HTMLTableElement01.html
new file mode 100644
index 0000000..9387f08
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement01.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement01.js b/LayoutTests/dom/html/level2/html/HTMLTableElement01.js
new file mode 100644
index 0000000..2d1be5f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement01.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The caption attribute returns the tables CAPTION.
+
+ Retrieve the align attribute of the CAPTION element from the second
+ TABLE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520
+*/
+function HTMLTableElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcaption;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vcaption = testNode.caption;
+
+ valign = vcaption.align;
+
+ assertEquals("alignLink","top",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement02-expected.txt
new file mode 100644
index 0000000..9f5e18c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement02.html b/LayoutTests/dom/html/level2/html/HTMLTableElement02.html
new file mode 100644
index 0000000..a408f0d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement02.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement02.js b/LayoutTests/dom/html/level2/html/HTMLTableElement02.js
new file mode 100644
index 0000000..37fd48d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The caption attribute returns the tables CAPTION or void if it does not
+ exist.
+
+ Retrieve the CAPTION element from within the first TABLE element.
+ Since one does not exist it should be void.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520
+*/
+function HTMLTableElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcaption;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vcaption = testNode.caption;
+
+ assertNull("captionLink",vcaption);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement03-expected.txt
new file mode 100644
index 0000000..ff92e7d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement03.html b/LayoutTests/dom/html/level2/html/HTMLTableElement03.html
new file mode 100644
index 0000000..281764b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement03.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement03.js b/LayoutTests/dom/html/level2/html/HTMLTableElement03.js
new file mode 100644
index 0000000..08fa0f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement03.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tHead attribute returns the tables THEAD.
+
+ Retrieve the align attribute of the THEAD element from the second
+ TABLE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944
+*/
+function HTMLTableElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tHead;
+
+ valign = vsection.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement04-expected.txt
new file mode 100644
index 0000000..f7fd720
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement04.html b/LayoutTests/dom/html/level2/html/HTMLTableElement04.html
new file mode 100644
index 0000000..8788c31
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement04.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement04.js b/LayoutTests/dom/html/level2/html/HTMLTableElement04.js
new file mode 100644
index 0000000..9f44d07
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tHead attribute returns the tables THEAD or null if it does not
+ exist.
+
+ Retrieve the THEAD element from within the first TABLE element.
+ Since one does not exist it should be null.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944
+*/
+function HTMLTableElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vsection = testNode.tHead;
+
+ assertNull("sectionLink",vsection);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement05-expected.txt
new file mode 100644
index 0000000..c7a2a4d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement05.html b/LayoutTests/dom/html/level2/html/HTMLTableElement05.html
new file mode 100644
index 0000000..1877256
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement05.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement05.js b/LayoutTests/dom/html/level2/html/HTMLTableElement05.js
new file mode 100644
index 0000000..68c5c06
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement05.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tFoot attribute returns the tables TFOOT.
+
+ Retrieve the align attribute of the TFOOT element from the second
+ TABLE element and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function HTMLTableElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tFoot;
+
+ valign = vsection.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement06-expected.txt
new file mode 100644
index 0000000..64ba64a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement06.html b/LayoutTests/dom/html/level2/html/HTMLTableElement06.html
new file mode 100644
index 0000000..3a09abe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement06.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement06.js b/LayoutTests/dom/html/level2/html/HTMLTableElement06.js
new file mode 100644
index 0000000..e8ae932
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tFoot attribute returns the tables TFOOT or null if it does not
+ exist.
+
+ Retrieve the TFOOT element from within the first TABLE element.
+ Since one does not exist it should be null.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function HTMLTableElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vsection = testNode.tFoot;
+
+ assertNull("sectionLink",vsection);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement07-expected.txt
new file mode 100644
index 0000000..42d026c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement07.html b/LayoutTests/dom/html/level2/html/HTMLTableElement07.html
new file mode 100644
index 0000000..8bb1036
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement07.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement07.js b/LayoutTests/dom/html/level2/html/HTMLTableElement07.js
new file mode 100644
index 0000000..a68bf15
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement07.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rows attribute returns a collection of all the rows in the table,
+ including al in THEAD, TFOOT, all TBODY elements.
+
+ Retrieve the rows attribute from the second TABLE element and
+ examine the items of the returned collection.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6156016
+*/
+function HTMLTableElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement07") != null) return;
+ var nodeList;
+ var rowsnodeList;
+ var testNode;
+ var doc;
+ var rowName;
+ var vrow;
+ var result = new Array();
+
+ expectedOptions = new Array();
+ expectedOptions[0] = "tr";
+ expectedOptions[1] = "tr";
+ expectedOptions[2] = "tr";
+ expectedOptions[3] = "tr";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ for(var indexN10069 = 0;indexN10069 < rowsnodeList.length; indexN10069++) {
+ vrow = rowsnodeList.item(indexN10069);
+ rowName = vrow.nodeName;
+
+ result[result.length] = rowName;
+
+ }
+ assertEqualsListAutoCase("element", "rowsLink",expectedOptions,result);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement08-expected.txt
new file mode 100644
index 0000000..5fc5966
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement08.html b/LayoutTests/dom/html/level2/html/HTMLTableElement08.html
new file mode 100644
index 0000000..4cbb548
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement08.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement08.js b/LayoutTests/dom/html/level2/html/HTMLTableElement08.js
new file mode 100644
index 0000000..56b6ba9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement08.js
@@ -0,0 +1,129 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tBodies attribute returns a collection of all the defined
+ table bodies.
+
+ Retrieve the tBodies attribute from the second TABLE element and
+ examine the items of the returned collection.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63206416
+*/
+function HTMLTableElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement08") != null) return;
+ var nodeList;
+ var tbodiesnodeList;
+ var testNode;
+ var doc;
+ var tbodiesName;
+ var vtbodies;
+ var result = new Array();
+
+ expectedOptions = new Array();
+ expectedOptions[0] = "tbody";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ tbodiesnodeList = testNode.tBodies;
+
+ for(var indexN10060 = 0;indexN10060 < tbodiesnodeList.length; indexN10060++) {
+ vtbodies = tbodiesnodeList.item(indexN10060);
+ tbodiesName = vtbodies.nodeName;
+
+ result[result.length] = tbodiesName;
+
+ }
+ assertEqualsListAutoCase("element", "tbodiesLink",expectedOptions,result);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement09-expected.txt
new file mode 100644
index 0000000..301b509
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement09.html b/LayoutTests/dom/html/level2/html/HTMLTableElement09.html
new file mode 100644
index 0000000..d7dc8d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement09.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement09.js b/LayoutTests/dom/html/level2/html/HTMLTableElement09.js
new file mode 100644
index 0000000..d1612b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement09.js
@@ -0,0 +1,132 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tBodies attribute returns a collection of all the defined
+ table bodies.
+
+ Retrieve the tBodies attribute from the third TABLE element and
+ examine the items of the returned collection. Tests multiple TBODY
+ elements.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63206416
+*/
+function HTMLTableElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement09") != null) return;
+ var nodeList;
+ var tbodiesnodeList;
+ var testNode;
+ var doc;
+ var tbodiesName;
+ var vtbodies;
+ var result = new Array();
+
+ expectedOptions = new Array();
+ expectedOptions[0] = "tbody";
+ expectedOptions[1] = "tbody";
+ expectedOptions[2] = "tbody";
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(2);
+ tbodiesnodeList = testNode.tBodies;
+
+ for(var indexN10066 = 0;indexN10066 < tbodiesnodeList.length; indexN10066++) {
+ vtbodies = tbodiesnodeList.item(indexN10066);
+ tbodiesName = vtbodies.nodeName;
+
+ result[result.length] = tbodiesName;
+
+ }
+ assertEqualsListAutoCase("element", "tbodiesLink",expectedOptions,result);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement10-expected.txt
new file mode 100644
index 0000000..81638f3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement10.html b/LayoutTests/dom/html/level2/html/HTMLTableElement10.html
new file mode 100644
index 0000000..88a9852
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement10.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement10.js b/LayoutTests/dom/html/level2/html/HTMLTableElement10.js
new file mode 100644
index 0000000..4f79b38
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the table's position with respect to the
+ rest of the document.
+
+ Retrieve the align attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23180977
+*/
+function HTMLTableElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement11-expected.txt
new file mode 100644
index 0000000..a2c9d91
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement11.html b/LayoutTests/dom/html/level2/html/HTMLTableElement11.html
new file mode 100644
index 0000000..9d2eb98
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement11.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement11.js b/LayoutTests/dom/html/level2/html/HTMLTableElement11.js
new file mode 100644
index 0000000..2ecfacb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement11.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The bgColor attribute specifies cell background color.
+
+ Retrieve the bgColor attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83532985
+*/
+function HTMLTableElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vbgcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vbgcolor = testNode.bgColor;
+
+ assertEquals("bgColorLink","#ff0000",vbgcolor);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement12-expected.txt
new file mode 100644
index 0000000..dc43782
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement12.html b/LayoutTests/dom/html/level2/html/HTMLTableElement12.html
new file mode 100644
index 0000000..71ca0b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement12.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement12.js b/LayoutTests/dom/html/level2/html/HTMLTableElement12.js
new file mode 100644
index 0000000..35b835f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement12.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The border attribute specifies the width of the border around the table.
+
+ Retrieve the border attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50969400
+*/
+function HTMLTableElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vborder;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vborder = testNode.border;
+
+ assertEquals("borderLink","4",vborder);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement13-expected.txt
new file mode 100644
index 0000000..063e1f0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement13.html b/LayoutTests/dom/html/level2/html/HTMLTableElement13.html
new file mode 100644
index 0000000..8abbd6d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement13.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement13.js b/LayoutTests/dom/html/level2/html/HTMLTableElement13.js
new file mode 100644
index 0000000..ca1f1a1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement13.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cellpadding attribute specifies the horizontal and vertical space
+ between cell content and cell borders.
+
+ Retrieve the cellpadding attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59162158
+*/
+function HTMLTableElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement13") != null) return;
+ var nodeList;
+ var testNode;
+ var vcellpadding;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vcellpadding = testNode.cellPadding;
+
+ assertEquals("cellPaddingLink","2",vcellpadding);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement14-expected.txt
new file mode 100644
index 0000000..986a65e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement14.html b/LayoutTests/dom/html/level2/html/HTMLTableElement14.html
new file mode 100644
index 0000000..86b2822
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement14.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement14.js b/LayoutTests/dom/html/level2/html/HTMLTableElement14.js
new file mode 100644
index 0000000..2ca3c5c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement14.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cellSpacing attribute specifies the horizontal and vertical separation
+ between cells.
+
+ Retrieve the cellSpacing attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68907883
+*/
+function HTMLTableElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement14") != null) return;
+ var nodeList;
+ var testNode;
+ var cellSpacing;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ cellSpacing = testNode.cellSpacing;
+
+ assertEquals("cellSpacingLink","2",cellSpacing);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement15-expected.txt
new file mode 100644
index 0000000..a6231a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement15.html b/LayoutTests/dom/html/level2/html/HTMLTableElement15.html
new file mode 100644
index 0000000..83de42e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement15.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement15.js b/LayoutTests/dom/html/level2/html/HTMLTableElement15.js
new file mode 100644
index 0000000..b864218
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement15.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The frame attribute specifies which external table borders to render.
+
+ Retrieve the frame attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64808476
+*/
+function HTMLTableElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement15") != null) return;
+ var nodeList;
+ var testNode;
+ var vframe;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vframe = testNode.frame;
+
+ assertEquals("frameLink","border",vframe);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement16-expected.txt
new file mode 100644
index 0000000..f13de11
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement16.html b/LayoutTests/dom/html/level2/html/HTMLTableElement16.html
new file mode 100644
index 0000000..8c0c50d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement16.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement16.js b/LayoutTests/dom/html/level2/html/HTMLTableElement16.js
new file mode 100644
index 0000000..570557d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement16.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rules attribute specifies which internal table borders to render.
+
+ Retrieve the rules attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26347553
+*/
+function HTMLTableElement16() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement16") != null) return;
+ var nodeList;
+ var testNode;
+ var vrules;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vrules = testNode.rules;
+
+ assertEquals("rulesLink","all",vrules);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement17-expected.txt
new file mode 100644
index 0000000..e62572a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement17.html b/LayoutTests/dom/html/level2/html/HTMLTableElement17.html
new file mode 100644
index 0000000..bbe9957
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement17.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement17.js b/LayoutTests/dom/html/level2/html/HTMLTableElement17.js
new file mode 100644
index 0000000..024bdf7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement17.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The summary attribute is a description about the purpose or structure
+ of a table.
+
+ Retrieve the summary attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-44998528
+*/
+function HTMLTableElement17() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement17") != null) return;
+ var nodeList;
+ var testNode;
+ var vsummary;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsummary = testNode.summary;
+
+ assertEquals("summaryLink","HTML Control Table",vsummary);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement18-expected.txt
new file mode 100644
index 0000000..1146b0c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement18.html b/LayoutTests/dom/html/level2/html/HTMLTableElement18.html
new file mode 100644
index 0000000..694dfe3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement18.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement18.js b/LayoutTests/dom/html/level2/html/HTMLTableElement18.js
new file mode 100644
index 0000000..e3efb73
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement18.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The width attribute specifies the desired table width.
+
+ Retrieve the width attribute of the first TABLE element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77447361
+*/
+function HTMLTableElement18() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement18") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","680",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement19-expected.txt
new file mode 100644
index 0000000..ac7142f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement19.html b/LayoutTests/dom/html/level2/html/HTMLTableElement19.html
new file mode 100644
index 0000000..a31c3c0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement19.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement19.js b/LayoutTests/dom/html/level2/html/HTMLTableElement19.js
new file mode 100644
index 0000000..9f5c00a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement19.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The createTHead() method creates a table header row or returns
+ an existing one.
+
+ Create a new THEAD element on the first TABLE element. The first
+ TABLE element should return null to make sure one doesn't exist.
+ After creation of the THEAD element the value is once again
+ checked and should not be null.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70313345
+*/
+function HTMLTableElement19() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement19") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection1;
+ var vsection2;
+ var newHead;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vsection1 = testNode.tHead;
+
+ assertNull("vsection1Id",vsection1);
+ newHead = testNode.createTHead();
+ vsection2 = testNode.tHead;
+
+ assertNotNull("vsection2Id",vsection2);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement20-expected.txt
new file mode 100644
index 0000000..0ba8e97
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement20.html b/LayoutTests/dom/html/level2/html/HTMLTableElement20.html
new file mode 100644
index 0000000..d1a6d27
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement20.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement20.js b/LayoutTests/dom/html/level2/html/HTMLTableElement20.js
new file mode 100644
index 0000000..7471587
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement20.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The createTHead() method creates a table header row or returns
+ an existing one.
+
+ Try to create a new THEAD element on the second TABLE element.
+ Since a THEAD element already exists in the TABLE element a new
+ THEAD element is not created and information from the already
+ existing THEAD element is returned.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70313345
+*/
+function HTMLTableElement20() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement20") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var newHead;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ newHead = testNode.createTHead();
+ vsection = testNode.tHead;
+
+ valign = vsection.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement21-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement21-expected.txt
new file mode 100644
index 0000000..c7be198
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement21-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement21
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement21.html b/LayoutTests/dom/html/level2/html/HTMLTableElement21.html
new file mode 100644
index 0000000..f26db9a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement21.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement21.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement21.js b/LayoutTests/dom/html/level2/html/HTMLTableElement21.js
new file mode 100644
index 0000000..48df04c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement21.js
@@ -0,0 +1,139 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement21";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteTHead() method deletes the header from the table.
+
+ The deleteTHead() method will delete the THEAD Element from the
+ second TABLE element. First make sure that the THEAD element exists
+ and then count the number of rows. After the THEAD element is
+ deleted there should be one less row.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38310198
+*/
+function HTMLTableElement21() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement21") != null) return;
+ var nodeList;
+ var rowsnodeList;
+ var testNode;
+ var vsection1;
+ var vsection2;
+ var vrows;
+ var doc;
+ var result = new Array();
+
+ expectedResult = new Array();
+ expectedResult[0] = 4;
+ expectedResult[1] = 3;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsection1 = testNode.tHead;
+
+ assertNotNull("vsection1Id",vsection1);
+rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ result[result.length] = vrows;
+testNode.deleteTHead();
+ vsection2 = testNode.tHead;
+
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ result[result.length] = vrows;
+assertEqualsList("rowsLink",expectedResult,result);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement21();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement22-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement22-expected.txt
new file mode 100644
index 0000000..3b620cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement22-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement22
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement22.html b/LayoutTests/dom/html/level2/html/HTMLTableElement22.html
new file mode 100644
index 0000000..b5acdd0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement22.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement22.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement22.js b/LayoutTests/dom/html/level2/html/HTMLTableElement22.js
new file mode 100644
index 0000000..ab6d700
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement22.js
@@ -0,0 +1,123 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement22";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The createTFoot() method creates a table footer row or returns
+ an existing one.
+
+ Create a new TFOOT element on the first TABLE element. The first
+ TABLE element should return null to make sure one doesn't exist.
+ After creation of the TFOOT element the value is once again
+ checked and should not be null.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8453710
+*/
+function HTMLTableElement22() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement22") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection1;
+ var vsection2;
+ var newFoot;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vsection1 = testNode.tFoot;
+
+ assertNull("vsection1Id",vsection1);
+ newFoot = testNode.createTFoot();
+ vsection2 = testNode.tFoot;
+
+ assertNotNull("vsection2Id",vsection2);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement22();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement23-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement23-expected.txt
new file mode 100644
index 0000000..d8df6cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement23-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement23
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement23.html b/LayoutTests/dom/html/level2/html/HTMLTableElement23.html
new file mode 100644
index 0000000..8701668
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement23.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement23.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement23.js b/LayoutTests/dom/html/level2/html/HTMLTableElement23.js
new file mode 100644
index 0000000..b065cee
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement23.js
@@ -0,0 +1,122 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement23";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The createTFoot() method creates a table footer row or returns
+ an existing one.
+
+ Try to create a new TFOOT element on the second TABLE element.
+ Since a TFOOT element already exists in the TABLE element a new
+ TFOOT element is not created and information from the already
+ existing TFOOT element is returned.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8453710
+*/
+function HTMLTableElement23() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement23") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var newFoot;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ newFoot = testNode.createTFoot();
+ vsection = testNode.tFoot;
+
+ valign = vsection.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement23();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement24-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement24-expected.txt
new file mode 100644
index 0000000..aaca5db
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement24-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement24
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement24.html b/LayoutTests/dom/html/level2/html/HTMLTableElement24.html
new file mode 100644
index 0000000..cb00836
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement24.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement24.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement24.js b/LayoutTests/dom/html/level2/html/HTMLTableElement24.js
new file mode 100644
index 0000000..2d612cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement24.js
@@ -0,0 +1,139 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement24";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteTFoot() method deletes the footer from the table.
+
+ The deleteTFoot() method will delete the TFOOT Element from the
+ second TABLE element. First make sure that the TFOOT element exists
+ and then count the number of rows. After the TFOOT element is
+ deleted there should be one less row.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78363258
+*/
+function HTMLTableElement24() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement24") != null) return;
+ var nodeList;
+ var rowsnodeList;
+ var testNode;
+ var vsection1;
+ var vsection2;
+ var vrows;
+ var doc;
+ var result = new Array();
+
+ expectedResult = new Array();
+ expectedResult[0] = 4;
+ expectedResult[1] = 3;
+
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsection1 = testNode.tFoot;
+
+ assertNotNull("vsection1Id",vsection1);
+rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ result[result.length] = vrows;
+testNode.deleteTFoot();
+ vsection2 = testNode.tFoot;
+
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ result[result.length] = vrows;
+assertEqualsList("rowsLink",expectedResult,result);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement24();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement25-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement25-expected.txt
new file mode 100644
index 0000000..52628cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement25-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement25
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement25.html b/LayoutTests/dom/html/level2/html/HTMLTableElement25.html
new file mode 100644
index 0000000..cff7212
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement25.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement25.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement25.js b/LayoutTests/dom/html/level2/html/HTMLTableElement25.js
new file mode 100644
index 0000000..5b80b95
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement25.js
@@ -0,0 +1,121 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement25";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The createCaption() method creates a new table caption object or returns
+ an existing one.
+
+ Create a new CAPTION element on the first TABLE element. Since
+ one does not currently exist the CAPTION element is created.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96920263
+*/
+function HTMLTableElement25() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement25") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection1;
+ var vsection2;
+ var newCaption;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vsection1 = testNode.caption;
+
+ assertNull("vsection1Id",vsection1);
+ newCaption = testNode.createCaption();
+ vsection2 = testNode.caption;
+
+ assertNotNull("vsection2Id",vsection2);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement25();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement26-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement26-expected.txt
new file mode 100644
index 0000000..5bda0fe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement26-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement26
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement26.html b/LayoutTests/dom/html/level2/html/HTMLTableElement26.html
new file mode 100644
index 0000000..dc0f45c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement26.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement26.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement26.js b/LayoutTests/dom/html/level2/html/HTMLTableElement26.js
new file mode 100644
index 0000000..623c905
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement26.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement26";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The createCaption() method creates a new table caption object or returns
+ an existing one.
+
+ Create a new CAPTION element on the first TABLE element. Since
+ one currently exists the CAPTION element is not created and you
+ can get the align attribute from the CAPTION element that exists.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96920263
+*/
+function HTMLTableElement26() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement26") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection1;
+ var vcaption;
+ var newCaption;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsection1 = testNode.caption;
+
+ assertNotNull("vsection1Id",vsection1);
+newCaption = testNode.createCaption();
+ vcaption = testNode.caption;
+
+ valign = vcaption.align;
+
+ assertEquals("alignLink","top",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement26();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement27-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement27-expected.txt
new file mode 100644
index 0000000..4d50cb5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement27-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement27
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement27.html b/LayoutTests/dom/html/level2/html/HTMLTableElement27.html
new file mode 100644
index 0000000..72a63c8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement27.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement27.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement27.js b/LayoutTests/dom/html/level2/html/HTMLTableElement27.js
new file mode 100644
index 0000000..7a66c31
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement27.js
@@ -0,0 +1,119 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement27";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteCaption() method deletes the table caption.
+
+ Delete the CAPTION element on the second TABLE element.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22930071
+*/
+function HTMLTableElement27() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement27") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection1;
+ var vsection2;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsection1 = testNode.caption;
+
+ assertNotNull("vsection1Id",vsection1);
+testNode.deleteCaption();
+ vsection2 = testNode.caption;
+
+ assertNull("vsection2Id",vsection2);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement27();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement28-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement28-expected.txt
new file mode 100644
index 0000000..b2a76f5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement28-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement28
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement28.html b/LayoutTests/dom/html/level2/html/HTMLTableElement28.html
new file mode 100644
index 0000000..2a98e93
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement28.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement28.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement28.js b/LayoutTests/dom/html/level2/html/HTMLTableElement28.js
new file mode 100644
index 0000000..a2813ba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement28.js
@@ -0,0 +1,133 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement28";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of 0. Currently the zero indexed row is in the THEAD
+ section of the TABLE. The number of rows in the THEAD section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the THEAD section is two.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903
+*/
+function HTMLTableElement28() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement28") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vsection1;
+ var vsection2;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsection1 = testNode.tHead;
+
+ rowsnodeList = vsection1.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",1,vrows);
+ newRow = testNode.insertRow(0);
+ vsection2 = testNode.tHead;
+
+ rowsnodeList = vsection2.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",2,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement28();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement29-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement29-expected.txt
new file mode 100644
index 0000000..2ffc0ba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement29-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement29
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement29.html b/LayoutTests/dom/html/level2/html/HTMLTableElement29.html
new file mode 100644
index 0000000..fdb6cce
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement29.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement29.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement29.js b/LayoutTests/dom/html/level2/html/HTMLTableElement29.js
new file mode 100644
index 0000000..d9e0064
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement29.js
@@ -0,0 +1,137 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement29";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of two. Currently the 2nd indexed row is in the TBODY
+ section of the TABLE. The number of rows in the TBODY section before
+ insertion of the new row is two. After the new row is inserted the number
+ of rows in the TBODY section is three.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903
+*/
+function HTMLTableElement29() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement29") != null) return;
+ var nodeList;
+ var tbodiesnodeList;
+ var testNode;
+ var bodyNode;
+ var newRow;
+ var rowsnodeList;
+ var vsection1;
+ var vsection2;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ tbodiesnodeList = testNode.tBodies;
+
+ bodyNode = tbodiesnodeList.item(0);
+ rowsnodeList = bodyNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",2,vrows);
+ newRow = testNode.insertRow(2);
+ tbodiesnodeList = testNode.tBodies;
+
+ bodyNode = tbodiesnodeList.item(0);
+ rowsnodeList = bodyNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",3,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement29();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement30-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement30-expected.txt
new file mode 100644
index 0000000..5472916
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement30-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement30
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement30.html b/LayoutTests/dom/html/level2/html/HTMLTableElement30.html
new file mode 100644
index 0000000..cdf1cfa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement30.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement30.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement30.js b/LayoutTests/dom/html/level2/html/HTMLTableElement30.js
new file mode 100644
index 0000000..5f63f50
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement30.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement30";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of four. After the new row is inserted the number of rows
+ in the table should be five.
+ Also the number of rows in the TFOOT section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the TFOOT section is two.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903
+*/
+function HTMLTableElement30() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement30") != null) return;
+ var nodeList;
+ var tbodiesnodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vsection1;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",4,vrows);
+ vsection1 = testNode.tFoot;
+
+ rowsnodeList = vsection1.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink",1,vrows);
+ newRow = testNode.insertRow(4);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",5,vrows);
+ vsection1 = testNode.tFoot;
+
+ rowsnodeList = vsection1.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink3",2,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement30();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement31-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement31-expected.txt
new file mode 100644
index 0000000..c79f963
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement31-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement31
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement31.html b/LayoutTests/dom/html/level2/html/HTMLTableElement31.html
new file mode 100644
index 0000000..53a610a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement31.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement31.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Empty Table">
+<tr><td>HTML can't abide empty table</td></tr>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement31.js b/LayoutTests/dom/html/level2/html/HTMLTableElement31.js
new file mode 100644
index 0000000..654c6e6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement31.js
@@ -0,0 +1,138 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement31";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table1");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row. In addition, when
+ the table is empty the row is inserted into a TBODY which is created
+ and inserted into the table.
+
+ Load the table1 file which has a non-empty table element.
+ Create an empty TABLE element and append to the document.
+ Check to make sure that the empty TABLE element doesn't
+ have a TBODY element. Insert a new row into the empty
+ TABLE element. Check for existence of the a TBODY element
+ in the table.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903
+* @see http://lists.w3.org/Archives/Public/www-dom-ts/2002Aug/0019.html
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=502
+*/
+function HTMLTableElement31() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement31") != null) return;
+ var nodeList;
+ var testNode;
+ var tableNode;
+ var tbodiesnodeList;
+ var newRow;
+ var doc;
+ var table;
+ var tbodiesLength;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table1");
+ nodeList = doc.getElementsByTagName("body");
+ assertSize("tableSize1",1,nodeList);
+testNode = nodeList.item(0);
+ table = doc.createElement("table");
+ tableNode = testNode.appendChild(table);
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("tableSize2",2,nodeList);
+tbodiesnodeList = tableNode.tBodies;
+
+ tbodiesLength = tbodiesnodeList.length;
+
+ assertEquals("Asize3",0,tbodiesLength);
+ newRow = tableNode.insertRow(0);
+ tbodiesnodeList = tableNode.tBodies;
+
+ tbodiesLength = tbodiesnodeList.length;
+
+ assertEquals("Asize4",1,tbodiesLength);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement31();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement32-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement32-expected.txt
new file mode 100644
index 0000000..a1fd405
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement32-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement32
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement32.html b/LayoutTests/dom/html/level2/html/HTMLTableElement32.html
new file mode 100644
index 0000000..998a551
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement32.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement32.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement32.js b/LayoutTests/dom/html/level2/html/HTMLTableElement32.js
new file mode 100644
index 0000000..1497104
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement32.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement32";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method deletes a table row.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of 0(first row). Currently there are four rows in the
+ table. After the deleteRow() method is called there should be
+ three rows in the table.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13114938
+*/
+function HTMLTableElement32() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement32") != null) return;
+ var nodeList;
+ var testNode;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",4,vrows);
+ testNode.deleteRow(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",3,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement32();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement33-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement33-expected.txt
new file mode 100644
index 0000000..4576e68
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement33-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement33
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement33.html b/LayoutTests/dom/html/level2/html/HTMLTableElement33.html
new file mode 100644
index 0000000..b4d31eb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement33.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement33.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement33.js b/LayoutTests/dom/html/level2/html/HTMLTableElement33.js
new file mode 100644
index 0000000..c86c5a1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement33.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement33";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method deletes a table row.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of 3(last row). Currently there are four rows in the
+ table. The deleteRow() method is called and now there should be three.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13114938
+*/
+function HTMLTableElement33() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement33") != null) return;
+ var nodeList;
+ var testNode;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",4,vrows);
+ testNode.deleteRow(3);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",3,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement33();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement34-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement34-expected.txt
new file mode 100644
index 0000000..71aab44
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement34-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement34
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement34.html b/LayoutTests/dom/html/level2/html/HTMLTableElement34.html
new file mode 100644
index 0000000..22e0846
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement34.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement34.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement34.js b/LayoutTests/dom/html/level2/html/HTMLTableElement34.js
new file mode 100644
index 0000000..408515c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement34.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement34";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of rows.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to insert a new row using an index of five. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only four rows.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-39872903')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableElement34() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement34") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+
+ {
+ success = false;
+ try {
+ newRow = testNode.insertRow(5);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableElement34",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement34();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement35-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement35-expected.txt
new file mode 100644
index 0000000..b4bd416
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement35-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement35
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement35.html b/LayoutTests/dom/html/level2/html/HTMLTableElement35.html
new file mode 100644
index 0000000..c4b4738
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement35.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement35.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement35.js b/LayoutTests/dom/html/level2/html/HTMLTableElement35.js
new file mode 100644
index 0000000..7502f02
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement35.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement35";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to insert a new row using an index of negative five. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-39872903')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableElement35() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement35") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+
+ {
+ success = false;
+ try {
+ newRow = testNode.insertRow(-5);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableElement35",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement35();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement36-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement36-expected.txt
new file mode 100644
index 0000000..d27d45f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement36-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement36
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement36.html b/LayoutTests/dom/html/level2/html/HTMLTableElement36.html
new file mode 100644
index 0000000..5862299
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement36.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement36.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement36.js b/LayoutTests/dom/html/level2/html/HTMLTableElement36.js
new file mode 100644
index 0000000..daee4d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement36.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement36";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of rows.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to delete a new row using an index of five. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only four rows.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableElement36() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement36") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+
+ {
+ success = false;
+ try {
+ testNode.deleteRow(5);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableElement36",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement36();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement37-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement37-expected.txt
new file mode 100644
index 0000000..9889b77
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement37-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement37
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement37.html b/LayoutTests/dom/html/level2/html/HTMLTableElement37.html
new file mode 100644
index 0000000..4d2ca58
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement37.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement37.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement37.js b/LayoutTests/dom/html/level2/html/HTMLTableElement37.js
new file mode 100644
index 0000000..77fbda2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement37.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement37";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is equal the number of rows.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to delete a new row using an index of four. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is equal to the
+ number of rows.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableElement37() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement37") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+
+ {
+ success = false;
+ try {
+ testNode.deleteRow(4);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableElement37",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement37();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement38-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement38-expected.txt
new file mode 100644
index 0000000..01d2a42
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement38-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement38
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement38.html b/LayoutTests/dom/html/level2/html/HTMLTableElement38.html
new file mode 100644
index 0000000..7a5ad39
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement38.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement38.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement38.js b/LayoutTests/dom/html/level2/html/HTMLTableElement38.js
new file mode 100644
index 0000000..49e9c06
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement38.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement38";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the second TABLE element which has four rows. Try
+ to delete a new row using an index of negative five. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableElement38() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement38") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+
+ {
+ success = false;
+ try {
+ testNode.deleteRow(-5);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableElement38",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement38();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement39-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement39-expected.txt
new file mode 100644
index 0000000..cc55a0e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement39-expected.txt
@@ -0,0 +1,3 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement39
+Status: failure
+Detail: rowsLink2: assertEquals failed, actual 2, expected 3.
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement39.html b/LayoutTests/dom/html/level2/html/HTMLTableElement39.html
new file mode 100644
index 0000000..f015fac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement39.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement39.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement39.js b/LayoutTests/dom/html/level2/html/HTMLTableElement39.js
new file mode 100644
index 0000000..cc40187
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement39.js
@@ -0,0 +1,139 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement39";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+ If index is -1 or equal to the number of rows, the new row
+ is appended.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of negative one.
+ The number of rows in the TBODY section before insertion with an index
+ of negative one is two. After the new row is inserted the number
+ of rows in the TBODY section is three.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903
+*/
+function HTMLTableElement39() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement39") != null) return;
+ var nodeList;
+ var tbodiesnodeList;
+ var testNode;
+ var bodyNode;
+ var newRow;
+ var rowsnodeList;
+ var vsection1;
+ var vsection2;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ tbodiesnodeList = testNode.tBodies;
+
+ bodyNode = tbodiesnodeList.item(0);
+ rowsnodeList = bodyNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",2,vrows);
+ newRow = testNode.insertRow(-1);
+ tbodiesnodeList = testNode.tBodies;
+
+ bodyNode = tbodiesnodeList.item(0);
+ rowsnodeList = bodyNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",3,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement39();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement40-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableElement40-expected.txt
new file mode 100644
index 0000000..57b8a27
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement40-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement40
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement40.html b/LayoutTests/dom/html/level2/html/HTMLTableElement40.html
new file mode 100644
index 0000000..d0260bc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement40.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableElement40.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableElement40.js b/LayoutTests/dom/html/level2/html/HTMLTableElement40.js
new file mode 100644
index 0000000..f53f37d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableElement40.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement40";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method deletes a table row. If the index is -1
+ the last row of the table is deleted.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of negative one. Currently there are four rows in the
+ table. The deleteRow() method is called and now there should be three.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938
+*/
+function HTMLTableElement40() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableElement40") != null) return;
+ var nodeList;
+ var testNode;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",4,vrows);
+ testNode.deleteRow(-1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",3,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableElement40();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement01-expected.txt
new file mode 100644
index 0000000..9a57eb4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement01.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement01.html
new file mode 100644
index 0000000..7d57d7b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement01.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement01.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement01.js
new file mode 100644
index 0000000..4cd8bd1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement01.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rowIndex attribute specifies the index of the row, relative to the
+ entire table, starting from 0. This is in document tree order and
+ not display order. The rowIndex does not take into account sections
+ (THEAD, TFOOT, or TBODY) within the table.
+
+ Retrieve the third TR element within the document and examine
+ its rowIndex value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67347567
+*/
+function HTMLTableRowElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+ vrowindex = testNode.rowIndex;
+
+ assertEquals("rowIndexLink",1,vrowindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement02-expected.txt
new file mode 100644
index 0000000..d5de13e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement02.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement02.html
new file mode 100644
index 0000000..7bc5f60
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement02.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement02.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement02.js
new file mode 100644
index 0000000..b974482
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The sectionRowIndex attribute specifies the index of this row, relative
+ to the current section(THEAD, TFOOT, or TBODY),starting from 0.
+
+ Retrieve the second TR(1st In THEAD) element within the document and
+ examine its sectionRowIndex value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901
+*/
+function HTMLTableRowElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vsectionrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(1);
+ vsectionrowindex = testNode.sectionRowIndex;
+
+ assertEquals("sectionRowIndexLink",0,vsectionrowindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement03-expected.txt
new file mode 100644
index 0000000..9e0efbf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement03.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement03.html
new file mode 100644
index 0000000..d7451a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement03.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement03.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement03.js
new file mode 100644
index 0000000..8d6fdfa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement03.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The sectionRowIndex attribute specifies the index of this row, relative
+ to the current section(THEAD, TFOOT, or TBODY),starting from 0.
+
+ Retrieve the third TR(1st In TFOOT) element within the document and
+ examine its sectionRowIndex value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901
+*/
+function HTMLTableRowElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vsectionrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(2);
+ vsectionrowindex = testNode.sectionRowIndex;
+
+ assertEquals("sectionRowIndexLink",0,vsectionrowindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement04-expected.txt
new file mode 100644
index 0000000..7c771f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement04.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement04.html
new file mode 100644
index 0000000..a5c4021
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement04.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement04.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement04.js
new file mode 100644
index 0000000..450ec45
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The sectionRowIndex attribute specifies the index of this row, relative
+ to the current section(THEAD, TFOOT, or TBODY),starting from 0.
+
+ Retrieve the fifth TR(2nd In TBODY) element within the document and
+ examine its sectionRowIndex value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901
+*/
+function HTMLTableRowElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vsectionrowindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(4);
+ vsectionrowindex = testNode.sectionRowIndex;
+
+ assertEquals("sectionRowIndexLink",1,vsectionrowindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement05-expected.txt
new file mode 100644
index 0000000..09bab69
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement05.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement05.html
new file mode 100644
index 0000000..8d16f21
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement05.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement05.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement05.js
new file mode 100644
index 0000000..1e11dce
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement05.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cells attribute specifies the collection of cells in this row.
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67349879
+*/
+function HTMLTableRowElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement05") != null) return;
+ var nodeList;
+ var cellsnodeList;
+ var testNode;
+ var vcells;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink",6,vcells);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement06-expected.txt
new file mode 100644
index 0000000..94c022f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement06.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement06.html
new file mode 100644
index 0000000..3796b74
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement06.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement06.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement06.js
new file mode 100644
index 0000000..b6c1a97
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal alignment of data within
+ cells of this row.
+
+ Retrieve the align attribute of the second TR element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257
+*/
+function HTMLTableRowElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(1);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement07-expected.txt
new file mode 100644
index 0000000..5f5ca3f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement07.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement07.html
new file mode 100644
index 0000000..48e578d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement07.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement07.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement07.js
new file mode 100644
index 0000000..5e653bd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement07.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The bgColor attribute specifies the background color of rows.
+
+ Retrieve the bgColor attribute of the second TR element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18161327
+*/
+function HTMLTableRowElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vbgcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(1);
+ vbgcolor = testNode.bgColor;
+
+ assertEquals("bgColorLink","#00FFFF".toLowerCase(),vbgcolor.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement08-expected.txt
new file mode 100644
index 0000000..8d15577
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement08.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement08.html
new file mode 100644
index 0000000..6738ecb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement08.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement08.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement08.js
new file mode 100644
index 0000000..71641c7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement08.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The ch attribute specifies the alignment character for cells in a column.
+
+ Retrieve the char attribute of the second TR element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502
+*/
+function HTMLTableRowElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(1);
+ vch = testNode.ch;
+
+ assertEquals("chLink","*",vch);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement09-expected.txt
new file mode 100644
index 0000000..e7b3887
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement09.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement09.html
new file mode 100644
index 0000000..41f5fbb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement09.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement09.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement09.js
new file mode 100644
index 0000000..e3cef33
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement09.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The chOff attribute specifies the offset of alignment character.
+
+ Retrieve the charoff attribute of the second TR element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461
+*/
+function HTMLTableRowElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vchoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(1);
+ vchoff = testNode.chOff;
+
+ assertEquals("charOffLink","1",vchoff);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement10-expected.txt
new file mode 100644
index 0000000..f438e61
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement10.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement10.html
new file mode 100644
index 0000000..4630092
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement10.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement10.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement10.js
new file mode 100644
index 0000000..8f94e7c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vAlign attribute specifies the vertical alignment of data within
+ cells of this row.
+
+ Retrieve the vAlign attribute of the second TR element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90000058
+*/
+function HTMLTableRowElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(1);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement11-expected.txt
new file mode 100644
index 0000000..9da0c83
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement11.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement11.html
new file mode 100644
index 0000000..b48acd1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement11.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement11.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement11.js
new file mode 100644
index 0000000..18175c5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement11.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertCell() method inserts an empty TD cell into this row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the first TD element. Invoke the
+ insertCell() which will create an empty TD cell at the
+ zero index position. Check the value of the newly created
+ cell and make sure it is null and also the numbers of cells
+ should now be seven.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68927016
+*/
+function HTMLTableRowElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement11") != null) return;
+ var nodeList;
+ var cellsnodeList;
+ var testNode;
+ var trNode;
+ var cellNode;
+ var value;
+ var newCell;
+ var vcells;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink1",6,vcells);
+ trNode = cellsnodeList.item(0);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value1Link","EMP0001",value);
+ newCell = testNode.insertCell(0);
+ testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink2",7,vcells);
+ trNode = cellsnodeList.item(0);
+ cellNode = trNode.firstChild;
+
+ assertNull("value2Link",cellNode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement12-expected.txt
new file mode 100644
index 0000000..9b9891d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement12.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement12.html
new file mode 100644
index 0000000..40beb9c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement12.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement12.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement12.js
new file mode 100644
index 0000000..89b6f02
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement12.js
@@ -0,0 +1,143 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertCell() method inserts an empty TD cell into this row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ insertCell() which will append the empty cell to the end of the list.
+ Check the value of the newly created cell and make sure it is null
+ and also the numbers of cells should now be seven.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68927016
+*/
+function HTMLTableRowElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement12") != null) return;
+ var nodeList;
+ var cellsnodeList;
+ var testNode;
+ var trNode;
+ var cellNode;
+ var value;
+ var newCell;
+ var vcells;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink1",6,vcells);
+ trNode = cellsnodeList.item(5);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value1Link","1230 North Ave. Dallas, Texas 98551",value);
+ newCell = testNode.insertCell(6);
+ testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink2",7,vcells);
+ trNode = cellsnodeList.item(6);
+ cellNode = trNode.firstChild;
+
+ assertNull("value2Link",cellNode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement13-expected.txt
new file mode 100644
index 0000000..84f136b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement13.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement13.html
new file mode 100644
index 0000000..bd6faaf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement13.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement13.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement13.js
new file mode 100644
index 0000000..0e01594
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement13.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteCell() method deletes a cell from the current row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the first TD element. Invoke the
+ deleteCell() method which will delete a cell from the current row.
+ Check the value of the cell at the zero index and also check
+ the number of cells which should now be five.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11738598
+*/
+function HTMLTableRowElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement13") != null) return;
+ var nodeList;
+ var cellsnodeList;
+ var testNode;
+ var trNode;
+ var cellNode;
+ var value;
+ var vcells;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink1",6,vcells);
+ trNode = cellsnodeList.item(0);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value1Link","EMP0001",value);
+ testNode.deleteCell(0);
+ testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink2",5,vcells);
+ trNode = cellsnodeList.item(0);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value2Link","Margaret Martin",value);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement14-expected.txt
new file mode 100644
index 0000000..9f17ca0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement14.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement14.html
new file mode 100644
index 0000000..c56a738
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement14.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement14.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement14.js
new file mode 100644
index 0000000..320a1cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement14.js
@@ -0,0 +1,144 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteCell() method deletes a cell from the current row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the third(index 2) TD element. Invoke the
+ deleteCell() method which will delete a cell from the current row.
+ Check the value of the third cell(index 2) and also check
+ the number of cells which should now be five.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11738598
+*/
+function HTMLTableRowElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement14") != null) return;
+ var nodeList;
+ var cellsnodeList;
+ var testNode;
+ var trNode;
+ var cellNode;
+ var value;
+ var vcells;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink1",6,vcells);
+ trNode = cellsnodeList.item(2);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value1Link","Accountant",value);
+ testNode.deleteCell(2);
+ testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink2",5,vcells);
+ trNode = cellsnodeList.item(2);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value2Link","56,000",value);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement15-expected.txt
new file mode 100644
index 0000000..526017a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement15.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement15.html
new file mode 100644
index 0000000..359d11f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement15.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement15.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement15.js
new file mode 100644
index 0000000..12ec474
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement15.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of cells.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to insert a cell using an index of seven. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only six cells.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-68927016')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableRowElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement15") != null) return;
+ var nodeList;
+ var testNode;
+ var newCell;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+
+ {
+ success = false;
+ try {
+ newCell = testNode.insertCell(7);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableRowElement15",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement16-expected.txt
new file mode 100644
index 0000000..679a450
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement16.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement16.html
new file mode 100644
index 0000000..873fba9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement16.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement16.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement16.js
new file mode 100644
index 0000000..450c1fe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement16.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to insert a cell using an index of negative seven. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-68927016')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableRowElement16() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement16") != null) return;
+ var nodeList;
+ var testNode;
+ var newCell;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+
+ {
+ success = false;
+ try {
+ newCell = testNode.insertCell(-7);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableRowElement16",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement17-expected.txt
new file mode 100644
index 0000000..7e464b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement17.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement17.html
new file mode 100644
index 0000000..994176d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement17.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement17.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement17.js
new file mode 100644
index 0000000..3bd4940
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement17.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of cells.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to delete a cell using an index of seven. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only six cells.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableRowElement17() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement17") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+
+ {
+ success = false;
+ try {
+ testNode.deleteCell(7);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableRowElement17",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement18-expected.txt
new file mode 100644
index 0000000..8331bec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement18.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement18.html
new file mode 100644
index 0000000..c344122
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement18.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement18.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement18.js
new file mode 100644
index 0000000..3194826
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement18.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is equal to the number of cells.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to delete a cell using an index of six. This should throw
+ a INDEX_SIZE_ERR DOMException since there are only six cells.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableRowElement18() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement18") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+
+ {
+ success = false;
+ try {
+ testNode.deleteCell(6);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableRowElement18",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement19-expected.txt
new file mode 100644
index 0000000..be98c67
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement19.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement19.html
new file mode 100644
index 0000000..6b4da47
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement19.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement19.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement19.js
new file mode 100644
index 0000000..14d1cc1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement19.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteCell() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the fourth TR element which has six cells. Try
+ to delete a cell using an index of negative six. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableRowElement19() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement19") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+
+ {
+ success = false;
+ try {
+ testNode.deleteCell(-6);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableRowElement19",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement20-expected.txt
new file mode 100644
index 0000000..e3a03fd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement20.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement20.html
new file mode 100644
index 0000000..4bc0df7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement20.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement20.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement20.js
new file mode 100644
index 0000000..d42ea64
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement20.js
@@ -0,0 +1,146 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertCell() method inserts an empty TD cell into this row.
+ If index is -1 or equal to the number of cells, the new cell is
+ appended.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ insertCell() with an index of negative one
+ which will append the empty cell to the end of the list.
+ Check the value of the newly created cell and make sure it is null
+ and also the numbers of cells should now be seven.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016
+*/
+function HTMLTableRowElement20() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement20") != null) return;
+ var nodeList;
+ var cellsnodeList;
+ var testNode;
+ var trNode;
+ var cellNode;
+ var value;
+ var newCell;
+ var vcells;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink1",6,vcells);
+ trNode = cellsnodeList.item(5);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value1Link","1230 North Ave. Dallas, Texas 98551",value);
+ newCell = testNode.insertCell(-1);
+ testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink2",7,vcells);
+ trNode = cellsnodeList.item(6);
+ cellNode = trNode.firstChild;
+
+ assertNull("value2Link",cellNode);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement21-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableRowElement21-expected.txt
new file mode 100644
index 0000000..db822f0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement21-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement21
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement21.html b/LayoutTests/dom/html/level2/html/HTMLTableRowElement21.html
new file mode 100644
index 0000000..341ff91
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement21.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableRowElement21.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableRowElement21.js b/LayoutTests/dom/html/level2/html/HTMLTableRowElement21.js
new file mode 100644
index 0000000..fc95089
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableRowElement21.js
@@ -0,0 +1,146 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement21";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteCell() method deletes a cell from the currtent row. If
+ the index is -1 the last cell in the row is deleted.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ deleteCell() with an index of negative one
+ which will delete the last cell in the row.
+ Check the value of the of the last cell
+ and also the numbers of cells should now be five.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598
+*/
+function HTMLTableRowElement21() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableRowElement21") != null) return;
+ var nodeList;
+ var cellsnodeList;
+ var testNode;
+ var trNode;
+ var cellNode;
+ var value;
+ var vcells;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink1",6,vcells);
+ trNode = cellsnodeList.item(5);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value1Link","1230 North Ave. Dallas, Texas 98551",value);
+ testNode.deleteCell(-1);
+ testNode = nodeList.item(3);
+ cellsnodeList = testNode.cells;
+
+ vcells = cellsnodeList.length;
+
+ assertEquals("cellsLink2",5,vcells);
+ trNode = cellsnodeList.item(4);
+ cellNode = trNode.firstChild;
+
+ value = cellNode.nodeValue;
+
+ assertEquals("value2Link","Female",value);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableRowElement21();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01-expected.txt
new file mode 100644
index 0000000..6299af3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01.html
new file mode 100644
index 0000000..8756817
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01.js
new file mode 100644
index 0000000..4c32f27
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement01.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal alignment of data within
+ cells.
+
+ Retrieve the align attribute of the first THEAD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119
+*/
+function HTMLTableSectionElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02-expected.txt
new file mode 100644
index 0000000..063d946
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02.html
new file mode 100644
index 0000000..8b1ede1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02.js
new file mode 100644
index 0000000..24949b7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal alignment of data within
+ cells.
+
+ Retrieve the align attribute of the first TFOOT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119
+*/
+function HTMLTableSectionElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tfoot");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03-expected.txt
new file mode 100644
index 0000000..696fd7a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03.html
new file mode 100644
index 0000000..1113dc4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03.js
new file mode 100644
index 0000000..cdefa1c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement03.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The align attribute specifies the horizontal alignment of data within
+ cells.
+
+ Retrieve the align attribute of the first TBODY element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119
+*/
+function HTMLTableSectionElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04-expected.txt
new file mode 100644
index 0000000..c3b5dc0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04.html
new file mode 100644
index 0000000..72ee0a1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04.js
new file mode 100644
index 0000000..46e62a1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The ch attribute specifies the alignment character for cells in a
+ column.
+
+ Retrieve the char attribute of the first THEAD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012
+*/
+function HTMLTableSectionElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vch = testNode.ch;
+
+ assertEquals("chLink","*",vch);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05-expected.txt
new file mode 100644
index 0000000..71a23ac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05.html
new file mode 100644
index 0000000..eba90a7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05.js
new file mode 100644
index 0000000..6bd0810
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement05.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The ch attribute specifies the alignment character for cells in a
+ column.
+
+ Retrieve the char attribute of the first TFOOT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012
+*/
+function HTMLTableSectionElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tfoot");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vch = testNode.ch;
+
+ assertEquals("chLink","+",vch);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06-expected.txt
new file mode 100644
index 0000000..3601643
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06.html
new file mode 100644
index 0000000..35f7f83
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06.js
new file mode 100644
index 0000000..480e4ea
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The ch attribute specifies the alignment character for cells in a
+ column.
+
+ Retrieve the char attribute of the first TBODY element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012
+*/
+function HTMLTableSectionElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vch = testNode.ch;
+
+ assertEquals("chLink","$",vch);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07-expected.txt
new file mode 100644
index 0000000..a00637b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07.html
new file mode 100644
index 0000000..0fd01cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07.js
new file mode 100644
index 0000000..259f4c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement07.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The chOff attribute specifies the offset of alignment character.
+
+ Retrieve the charoff attribute of the first THEAD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732
+*/
+function HTMLTableSectionElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcharoff = testNode.chOff;
+
+ assertEquals("chOffLink","1",vcharoff);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08-expected.txt
new file mode 100644
index 0000000..ba128d3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08.html
new file mode 100644
index 0000000..ef0f04c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08.js
new file mode 100644
index 0000000..edd4d3f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement08.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The chOff attribute specifies the offset of alignment character.
+
+ Retrieve the charoff attribute of the first TFOOT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732
+*/
+function HTMLTableSectionElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tfoot");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcharoff = testNode.chOff;
+
+ assertEquals("chOffLink","2",vcharoff);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09-expected.txt
new file mode 100644
index 0000000..dcf06c0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09.html
new file mode 100644
index 0000000..59adc45
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09.js
new file mode 100644
index 0000000..82acf9f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement09.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The chOff attribute specifies the offset of alignment character.
+
+ Retrieve the charoff attribute of the first TBODY element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732
+*/
+function HTMLTableSectionElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vcharoff = testNode.chOff;
+
+ assertEquals("chOffLink","3",vcharoff);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10-expected.txt
new file mode 100644
index 0000000..7c2c899
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10.html
new file mode 100644
index 0000000..9474b95
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10.js
new file mode 100644
index 0000000..207939f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vAlign attribute specifies the vertical alignment of cell data in
+ column.
+
+ Retrieve the vAlign attribute of the first THEAD element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116
+*/
+function HTMLTableSectionElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11-expected.txt
new file mode 100644
index 0000000..9c16d3d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11.html
new file mode 100644
index 0000000..d569b5c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11.js
new file mode 100644
index 0000000..b4e7733
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement11.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vAlign attribute specifies the vertical alignment of cell data in
+ column.
+
+ Retrieve the vAlign attribute of the first TFOOT element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116
+*/
+function HTMLTableSectionElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tfoot");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12-expected.txt
new file mode 100644
index 0000000..93cb00f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12.html
new file mode 100644
index 0000000..481ef73
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12.js
new file mode 100644
index 0000000..7ac5df3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement12.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The vAlign attribute specifies the vertical alignment of cell data in
+ column.
+
+ Retrieve the vAlign attribute of the first TBODY element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116
+*/
+function HTMLTableSectionElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13-expected.txt
new file mode 100644
index 0000000..07a5331
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13.html
new file mode 100644
index 0000000..003b647
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13.js
new file mode 100644
index 0000000..a534654
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement13.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first THEAD element and examine the value of
+ the rows length attribute.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650
+*/
+function HTMLTableSectionElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement13") != null) return;
+ var nodeList;
+ var rowsnodeList;
+ var testNode;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink",1,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14-expected.txt
new file mode 100644
index 0000000..de710f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14.html
new file mode 100644
index 0000000..2cebf29
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14.js
new file mode 100644
index 0000000..1a437e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement14.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first TFOOT element and examine the value of
+ the rows length attribute.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650
+*/
+function HTMLTableSectionElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement14") != null) return;
+ var nodeList;
+ var rowsnodeList;
+ var testNode;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tfoot");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink",1,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15-expected.txt
new file mode 100644
index 0000000..81a8e9e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15.html
new file mode 100644
index 0000000..61800a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15.js
new file mode 100644
index 0000000..a67a9af
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement15.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first TBODY element and examine the value of
+ the rows length attribute.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650
+*/
+function HTMLTableSectionElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement15") != null) return;
+ var nodeList;
+ var rowsnodeList;
+ var testNode;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink",2,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16-expected.txt
new file mode 100644
index 0000000..35292b1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement16
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16.html
new file mode 100644
index 0000000..aa0711c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement16.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16.js
new file mode 100644
index 0000000..5f89365
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement16.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement16";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the THEAD section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the THEAD section is two.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626
+*/
+function HTMLTableSectionElement16() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement16") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",1,vrows);
+ newRow = testNode.insertRow(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",2,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement16();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17-expected.txt
new file mode 100644
index 0000000..6c5895e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17.html
new file mode 100644
index 0000000..581f0d5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17.js
new file mode 100644
index 0000000..14473d6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement17.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TFOOT element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the TFOOT section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the TFOOT section is two.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626
+*/
+function HTMLTableSectionElement17() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement17") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tfoot");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",1,vrows);
+ newRow = testNode.insertRow(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",2,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement17();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18-expected.txt
new file mode 100644
index 0000000..3764bfe
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18.html
new file mode 100644
index 0000000..1a9f518
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18.js
new file mode 100644
index 0000000..7e8211b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement18.js
@@ -0,0 +1,126 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TBODY element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the TBODY section before
+ insertion of the new row is two. After the new row is inserted the number
+ of rows in the TBODY section is three.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626
+*/
+function HTMLTableSectionElement18() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement18") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",2,vrows);
+ newRow = testNode.insertRow(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",3,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement18();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19-expected.txt
new file mode 100644
index 0000000..a97b199
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19.html
new file mode 100644
index 0000000..d6958ac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19.js
new file mode 100644
index 0000000..64f242f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement19.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of 1. The nuber of rows in the THEAD section before
+ insertion of the new row is one therefore the new row is appended.
+ After the new row is inserted the number of rows in the THEAD
+ section is two.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626
+*/
+function HTMLTableSectionElement19() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement19") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",1,vrows);
+ newRow = testNode.insertRow(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",2,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement19();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20-expected.txt
new file mode 100644
index 0000000..de84b74
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20.html
new file mode 100644
index 0000000..3d31f36
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20.js
new file mode 100644
index 0000000..437291a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement20.js
@@ -0,0 +1,127 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TFOOT element and invoke the insertRow() method
+ with an index of one. The nuber of rows in the TFOOT section before
+ insertion of the new row is one therefore the new row is appended.
+ After the new row is inserted the number of rows in the TFOOT section
+ is two.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626
+*/
+function HTMLTableSectionElement20() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement20") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tfoot");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",1,vrows);
+ newRow = testNode.insertRow(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",2,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement20();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21-expected.txt
new file mode 100644
index 0000000..a73fd7c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement21
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21.html
new file mode 100644
index 0000000..5082070
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement21.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21.js
new file mode 100644
index 0000000..03c9be2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement21.js
@@ -0,0 +1,128 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement21";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TBODY element and invoke the insertRow() method
+ with an index of two. The number of rows in the TBODY section before
+ insertion of the new row is two therefore the row is appended.
+ After the new row is inserted the number of rows in the TBODY section is
+ three.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626
+* @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=502
+*/
+function HTMLTableSectionElement21() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement21") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",2,vrows);
+ newRow = testNode.insertRow(2);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",3,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement21();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22-expected.txt
new file mode 100644
index 0000000..cb471d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement22
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22.html
new file mode 100644
index 0000000..679a33f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement22.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22.js
new file mode 100644
index 0000000..4e2a77b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement22.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement22";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first THEAD element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the THEAD section before
+ the deletion of the row is one. After the row is deleted the number
+ of rows in the THEAD section is zero.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626
+*/
+function HTMLTableSectionElement22() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement22") != null) return;
+ var nodeList;
+ var testNode;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",1,vrows);
+ testNode.deleteRow(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",0,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement22();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23-expected.txt
new file mode 100644
index 0000000..63890c4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement23
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23.html
new file mode 100644
index 0000000..057935f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement23.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23.js
new file mode 100644
index 0000000..516b0b3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement23.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement23";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first TFOOT element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the TFOOT section before
+ the deletion of the row is one. After the row is deleted the number
+ of rows in the TFOOT section is zero.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626
+*/
+function HTMLTableSectionElement23() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement23") != null) return;
+ var nodeList;
+ var testNode;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tfoot");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",1,vrows);
+ testNode.deleteRow(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",0,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement23();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24-expected.txt
new file mode 100644
index 0000000..28e953a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement24
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24.html
new file mode 100644
index 0000000..cf7681b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement24.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24.js
new file mode 100644
index 0000000..58cd1ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement24.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement24";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first TBODY element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the TBODY section before
+ the deletion of the row is two. After the row is deleted the number
+ of rows in the TBODY section is one.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626
+*/
+function HTMLTableSectionElement24() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement24") != null) return;
+ var nodeList;
+ var testNode;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",2,vrows);
+ testNode.deleteRow(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",1,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement24();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25-expected.txt
new file mode 100644
index 0000000..e2b5f0b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement25
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25.html
new file mode 100644
index 0000000..edf0608
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement25.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25.js
new file mode 100644
index 0000000..889efd2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement25.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement25";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of rows.
+
+ Retrieve the first THEAD element which has one row. Try
+ to insert a new row using an index of two. This should throw
+ a INDEX_SIZE_ERR DOMException since there is only one row.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-93995626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableSectionElement25() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement25") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+
+ {
+ success = false;
+ try {
+ newRow = testNode.insertRow(2);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableSectionElement25",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement25();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26-expected.txt
new file mode 100644
index 0000000..760d838
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement26
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26.html
new file mode 100644
index 0000000..9a600cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement26.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26.js
new file mode 100644
index 0000000..5b73f49
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement26.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement26";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the first THEAD element which has one row. Try
+ to insert a new row using an index of negative two. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-93995626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableSectionElement26() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement26") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+
+ {
+ success = false;
+ try {
+ newRow = testNode.insertRow(-2);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableSectionElement26",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement26();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27-expected.txt
new file mode 100644
index 0000000..ab8672e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement27
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27.html
new file mode 100644
index 0000000..56a7265
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement27.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27.js
new file mode 100644
index 0000000..6220766
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement27.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement27";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is greater than the number of rows.
+
+ Retrieve the first THEAD element which has one row. Try
+ to delete a row using an index of two. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is greater than the
+ number of rows.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableSectionElement27() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement27") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+
+ {
+ success = false;
+ try {
+ testNode.deleteRow(2);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableSectionElement27",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement27();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28-expected.txt
new file mode 100644
index 0000000..e93526c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement28
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28.html
new file mode 100644
index 0000000..65be56f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement28.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28.js
new file mode 100644
index 0000000..0a64611
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement28.js
@@ -0,0 +1,125 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement28";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is equal to the number of rows.
+
+ Retrieve the first THEAD element which has one row. Try
+ to delete a row using an index of 1. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is equal to the
+ number of rows.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableSectionElement28() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement28") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+
+ {
+ success = false;
+ try {
+ testNode.deleteRow(1);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableSectionElement28",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement28();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29-expected.txt
new file mode 100644
index 0000000..fa6b61d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement29
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29.html
new file mode 100644
index 0000000..f42c9ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement29.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29.js
new file mode 100644
index 0000000..209bd03
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement29.js
@@ -0,0 +1,124 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement29";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method throws a INDEX_SIZE_ERR DOMException
+ if the specified index is negative.
+
+ Retrieve the first THEAD element which has one row. Try
+ to delete a row using an index of negative two. This should throw
+ a INDEX_SIZE_ERR DOMException since the index is negative.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])
+*/
+function HTMLTableSectionElement29() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement29") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+
+ {
+ success = false;
+ try {
+ testNode.deleteRow(-2);
+ }
+ catch(ex) {
+ success = (typeof(ex.code) != 'undefined' && ex.code == 1);
+ }
+ assertTrue("HTMLTableSectionElement29",success);
+ }
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement29();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30-expected.txt
new file mode 100644
index 0000000..8e10d38
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement30
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30.html
new file mode 100644
index 0000000..c590eba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement30.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30.js
new file mode 100644
index 0000000..792a653
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement30.js
@@ -0,0 +1,130 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement30";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The insertRow() method inserts a new empty table row. The new
+ row is inserted immediately before the current indexth row in this
+ section. If index is -1 or equal to the number of rows in this section,
+ the new row is appended.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of negative one. Since the index is negative one the
+ new row is appended.
+ After the new row is appended the number of rows in the THEAD
+ section is two.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626
+*/
+function HTMLTableSectionElement30() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement30") != null) return;
+ var nodeList;
+ var testNode;
+ var newRow;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("thead");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",1,vrows);
+ newRow = testNode.insertRow(-1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",2,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement30();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31-expected.txt
new file mode 100644
index 0000000..602fae8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement31
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31.html b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31.html
new file mode 100644
index 0000000..662acb5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTableSectionElement31.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31.js b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31.js
new file mode 100644
index 0000000..bee0bba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTableSectionElement31.js
@@ -0,0 +1,128 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement31";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The deleteRow() method deletes a row from this section. The index
+ starts from 0 and is relative only to the rows contained inside
+ this section, not all the rows in the table. If the index is -1
+ the last row will be deleted.
+
+ Retrieve the second TBODY element and invoke the deleteRow() method
+ with an index of -1. The nuber of rows in the THEAD section before
+ the deletion of the row is two. After the row is deleted the number
+ of rows in the TBODY section is one.
+
+* @author NIST
+* @author Rick Rivello
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626
+*/
+function HTMLTableSectionElement31() {
+ var success;
+ if(checkInitialization(builder, "HTMLTableSectionElement31") != null) return;
+ var nodeList;
+ var testNode;
+ var rowsnodeList;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("tbody");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink1",2,vrows);
+ testNode.deleteRow(-1);
+ rowsnodeList = testNode.rows;
+
+ vrows = rowsnodeList.length;
+
+ assertEquals("rowsLink2",1,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTableSectionElement31();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01-expected.txt
new file mode 100644
index 0000000..1bab501
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01.html
new file mode 100644
index 0000000..622b285
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01.js
new file mode 100644
index 0000000..3aa36de
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement01.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The defaultValue attribute represents the HTML value of the attribute
+ when the type attribute has the value of "Text", "File" or "Password".
+
+ Retrieve the defaultValue attribute of the 2nd TEXTAREA element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36152213
+*/
+function HTMLTextAreaElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vdefaultvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vdefaultvalue = testNode.defaultValue;
+
+ assertEquals("defaultValueLink","TEXTAREA2",vdefaultvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02-expected.txt
new file mode 100644
index 0000000..991f7dd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02.html
new file mode 100644
index 0000000..d1c07fc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02.js
new file mode 100644
index 0000000..344f451
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement02.js
@@ -0,0 +1,117 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns the FORM element containing this control.
+
+ Retrieve the form attribute from the first TEXTAREA element
+ and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18911464
+*/
+function HTMLTextAreaElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var fNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ fNode = testNode.form;
+
+ vform = fNode.id;
+
+ assertEquals("formLink","form1",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03-expected.txt
new file mode 100644
index 0000000..6c190c6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03.html
new file mode 100644
index 0000000..e8bff16
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03.js
new file mode 100644
index 0000000..73a0fc8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement03.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The form attribute returns null if control in not within the context of
+ a form.
+
+ Retrieve the second TEXTAREA element and
+ examine its form element.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18911464
+*/
+function HTMLTextAreaElement03() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement03") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vform = testNode.form;
+
+ assertNull("formNullLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement03();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04-expected.txt
new file mode 100644
index 0000000..5cbf701
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04.html
new file mode 100644
index 0000000..dc7cf3a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04.js
new file mode 100644
index 0000000..2027473
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The accessKey attribute specifies a single character access key to
+ give access to the form control.
+
+ Retrieve the accessKey attribute of the 1st TEXTAREA element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93102991
+*/
+function HTMLTextAreaElement04() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement04") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("accessKeyLink","c",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement04();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05-expected.txt
new file mode 100644
index 0000000..41b4c72
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05.html
new file mode 100644
index 0000000..0442acc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05.js
new file mode 100644
index 0000000..683509e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement05.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The cols attribute specifies the width of control(in characters).
+
+ Retrieve the cols attribute of the 1st TEXTAREA element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-51387225
+*/
+function HTMLTextAreaElement05() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement05") != null) return;
+ var nodeList;
+ var testNode;
+ var vcols;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vcols = testNode.cols;
+
+ assertEquals("colsLink",20,vcols);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement05();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06-expected.txt
new file mode 100644
index 0000000..636ba91
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06.html
new file mode 100644
index 0000000..63273ec
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06.js
new file mode 100644
index 0000000..3cde57f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The disabled attribute specifies the control is unavailable in this
+ context.
+
+ Retrieve the disabled attribute from the 2nd TEXTAREA element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98725443
+*/
+function HTMLTextAreaElement06() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement06") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vdisabled = testNode.disabled;
+
+ assertTrue("disabledLink",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement06();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07-expected.txt
new file mode 100644
index 0000000..f76957a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07.html
new file mode 100644
index 0000000..ebec0a3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07.js
new file mode 100644
index 0000000..6aa2d69
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement07.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The name attribute specifies the form control or object name when
+ submitted with a form.
+
+ Retrieve the name attribute of the 1st TEXTAREA element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70715578
+*/
+function HTMLTextAreaElement07() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement07") != null) return;
+ var nodeList;
+ var testNode;
+ var vname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vname = testNode.name;
+
+ assertEquals("nameLink","text1",vname);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement07();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08-expected.txt
new file mode 100644
index 0000000..ae7b3a2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08.html
new file mode 100644
index 0000000..ede490c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08.js
new file mode 100644
index 0000000..632d56a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement08.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The readOnly attribute specifies this control is read-only.
+
+ Retrieve the readOnly attribute from the 3rd TEXTAREA element and
+ examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39131423
+*/
+function HTMLTextAreaElement08() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement08") != null) return;
+ var nodeList;
+ var testNode;
+ var vreadonly;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(2);
+ vreadonly = testNode.readOnly;
+
+ assertTrue("readOnlyLink",vreadonly);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement08();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09-expected.txt
new file mode 100644
index 0000000..c2a0541
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09.html
new file mode 100644
index 0000000..56b2e07
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09.js
new file mode 100644
index 0000000..186a9a1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement09.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The rows attribute specifies the number of text rowns.
+
+ Retrieve the rows attribute of the 1st TEXTAREA element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46975887
+*/
+function HTMLTextAreaElement09() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement09") != null) return;
+ var nodeList;
+ var testNode;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vrows = testNode.rows;
+
+ assertEquals("rowsLink",7,vrows);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement09();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10-expected.txt
new file mode 100644
index 0000000..41a92e9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10.html
new file mode 100644
index 0000000..c88dfb1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10.js
new file mode 100644
index 0000000..a7aa773
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The tabIndex attribute is an index that represents the element's position
+ in the tabbing order.
+
+ Retrieve the tabIndex attribute of the 1st TEXTAREA element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-60363303
+*/
+function HTMLTextAreaElement10() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement10") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",5,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement10();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11-expected.txt
new file mode 100644
index 0000000..e7e878c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11.html
new file mode 100644
index 0000000..61bbcce
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11.js
new file mode 100644
index 0000000..f1deee4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement11.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the type of this form control.
+
+ Retrieve the type attribute of the 1st TEXTAREA element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-24874179
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLTextAreaElement-type
+*/
+function HTMLTextAreaElement11() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement11") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","textarea",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement11();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12-expected.txt
new file mode 100644
index 0000000..5a48cbb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12.html
new file mode 100644
index 0000000..ab92613
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12.js
new file mode 100644
index 0000000..a2c3b4b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement12.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The value attribute represents the current contents of the corresponding
+ form control, in an interactive user agent.
+
+ Retrieve the value attribute of the 1st TEXTAREA element and examine
+ its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70715579
+*/
+function HTMLTextAreaElement12() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement12") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ vvalue = testNode.value;
+
+ assertEquals("valueLink","TEXTAREA1",vvalue);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement12();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13-expected.txt
new file mode 100644
index 0000000..5a678c6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13.html
new file mode 100644
index 0000000..df949e4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13.js
new file mode 100644
index 0000000..bc1ce40
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement13.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Calling HTMLTextAreaElement.blur should surrender input focus.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6750689
+*/
+function HTMLTextAreaElement13() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement13") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ testNode.blur();
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement13();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14-expected.txt
new file mode 100644
index 0000000..8aab94d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14.html
new file mode 100644
index 0000000..ebb2a81
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14.js
new file mode 100644
index 0000000..d5eb171
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement14.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Calling HTMLTextAreaElement.focus should capture input focus.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39055426
+*/
+function HTMLTextAreaElement14() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement14") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ testNode.focus();
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement14();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15-expected.txt
new file mode 100644
index 0000000..8915365
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15.html b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15.html
new file mode 100644
index 0000000..d3495f7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TEXTAREA</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTextAreaElement15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20" ROWS="7" ACCESSKEY="c" TABINDEX="5">TEXTAREA1</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit1" VALUE="Submit1"/>
+<INPUT TYPE="reset" NAME="reset1" VALUE="Reset1"/>
+</P>
+</FORM>
+<P>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" DISABLED="disabled">TEXTAREA2</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset2" VALUE="Reset2"/>
+<TEXTAREA NAME="text2" COLS="50" ROWS="2" READONLY="readonly">TEXTAREA3</TEXTAREA>
+<INPUT TYPE="submit" NAME="submit2" VALUE="Submit2"/>
+<INPUT TYPE="reset" NAME="reset3" VALUE="Reset3"/>
+</P>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15.js b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15.js
new file mode 100644
index 0000000..669b27d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTextAreaElement15.js
@@ -0,0 +1,107 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "textarea");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Calling HTMLTextAreaElement.select should select the text area.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48880622
+*/
+function HTMLTextAreaElement15() {
+ var success;
+ if(checkInitialization(builder, "HTMLTextAreaElement15") != null) return;
+ var nodeList;
+ var testNode;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "textarea");
+ nodeList = doc.getElementsByTagName("textarea");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(0);
+ testNode.select();
+
+}
+
+
+
+
+function runTest() {
+ HTMLTextAreaElement15();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLTitleElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLTitleElement01-expected.txt
new file mode 100644
index 0000000..8666424
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTitleElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTitleElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLTitleElement01.html b/LayoutTests/dom/html/level2/html/HTMLTitleElement01.html
new file mode 100644
index 0000000..d343281
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTitleElement01.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TITLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLTitleElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BR/>
+</P>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLTitleElement01.js b/LayoutTests/dom/html/level2/html/HTMLTitleElement01.js
new file mode 100644
index 0000000..64ce266
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLTitleElement01.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTitleElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "title");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The text attribute is the specified title as a string.
+
+ Retrieve the text attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77500413
+*/
+function HTMLTitleElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLTitleElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vtext;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "title");
+ nodeList = doc.getElementsByTagName("title");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtext = testNode.text;
+
+ assertEquals("textLink","NIST DOM HTML Test - TITLE",vtext);
+
+}
+
+
+
+
+function runTest() {
+ HTMLTitleElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLUListElement01-expected.txt b/LayoutTests/dom/html/level2/html/HTMLUListElement01-expected.txt
new file mode 100644
index 0000000..9d4b76e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLUListElement01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLUListElement01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLUListElement01.html b/LayoutTests/dom/html/level2/html/HTMLUListElement01.html
new file mode 100644
index 0000000..892df11
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLUListElement01.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - ULIST</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLUListElement01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<OL>
+<LI>EMP0001
+<UL COMPACT="compact" TYPE="disc">
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+<DD>1230 North Ave. Dallas, Texas 98551</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+<LI>EMP0002
+<UL>
+<LI>Martha Raynolds
+<DL>
+<DD>Secretary</DD>
+<DD>35,000</DD>
+<DD>Female</DD>
+<DD>1900 Dallas Road. Dallas, Texas 98554</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLUListElement01.js b/LayoutTests/dom/html/level2/html/HTMLUListElement01.js
new file mode 100644
index 0000000..367d136
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLUListElement01.js
@@ -0,0 +1,114 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLUListElement01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "ulist");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The compact attribute specifies whether to reduce spacing between list
+ items.
+
+ Retrieve the compact attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39864178
+*/
+function HTMLUListElement01() {
+ var success;
+ if(checkInitialization(builder, "HTMLUListElement01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcompact;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "ulist");
+ nodeList = doc.getElementsByTagName("ul");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vcompact = testNode.compact;
+
+ assertTrue("compactLink",vcompact);
+
+}
+
+
+
+
+function runTest() {
+ HTMLUListElement01();
+}
diff --git a/LayoutTests/dom/html/level2/html/HTMLUListElement02-expected.txt b/LayoutTests/dom/html/level2/html/HTMLUListElement02-expected.txt
new file mode 100644
index 0000000..dd19056
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLUListElement02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLUListElement02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/HTMLUListElement02.html b/LayoutTests/dom/html/level2/html/HTMLUListElement02.html
new file mode 100644
index 0000000..21d4cab
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLUListElement02.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - ULIST</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='HTMLUListElement02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<OL>
+<LI>EMP0001
+<UL COMPACT="compact" TYPE="disc">
+<LI>Margaret Martin
+<DL>
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+<DD>1230 North Ave. Dallas, Texas 98551</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+<LI>EMP0002
+<UL>
+<LI>Martha Raynolds
+<DL>
+<DD>Secretary</DD>
+<DD>35,000</DD>
+<DD>Female</DD>
+<DD>1900 Dallas Road. Dallas, Texas 98554</DD>
+</DL>
+</LI>
+</UL>
+</LI>
+</OL>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/HTMLUListElement02.js b/LayoutTests/dom/html/level2/html/HTMLUListElement02.js
new file mode 100644
index 0000000..8f43622
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/HTMLUListElement02.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLUListElement02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "ulist");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+ The type attribute specifies the bullet style.
+
+ Retrieve the type attribute and examine its value.
+
+* @author NIST
+* @author Mary Brady
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96874670
+*/
+function HTMLUListElement02() {
+ var success;
+ if(checkInitialization(builder, "HTMLUListElement02") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "ulist");
+ nodeList = doc.getElementsByTagName("ul");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","disc",vtype);
+
+}
+
+
+
+
+function runTest() {
+ HTMLUListElement02();
+}
diff --git a/LayoutTests/dom/html/level2/html/anchor01-expected.txt b/LayoutTests/dom/html/level2/html/anchor01-expected.txt
new file mode 100644
index 0000000..bc7669a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/anchor01.html b/LayoutTests/dom/html/level2/html/anchor01.html
new file mode 100644
index 0000000..7fa73a2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='anchor01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/anchor01.js b/LayoutTests/dom/html/level2/html/anchor01.js
new file mode 100644
index 0000000..f769787
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor01.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+A single character access key to give access to the form control.
+The value of attribute accessKey of the anchor element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89647724
+*/
+function anchor01() {
+ var success;
+ if(checkInitialization(builder, "anchor01") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("accessKeyLink","g",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ anchor01();
+}
diff --git a/LayoutTests/dom/html/level2/html/anchor02-expected.txt b/LayoutTests/dom/html/level2/html/anchor02-expected.txt
new file mode 100644
index 0000000..768e45f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/anchor02.html b/LayoutTests/dom/html/level2/html/anchor02.html
new file mode 100644
index 0000000..14edd7f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor02.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='anchor02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/anchor02.js b/LayoutTests/dom/html/level2/html/anchor02.js
new file mode 100644
index 0000000..e6020a3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor02.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The character encoding of the linked resource.
+The value of attribute charset of the anchor element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67619266
+*/
+function anchor02() {
+ var success;
+ if(checkInitialization(builder, "anchor02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcharset;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcharset = testNode.charset;
+
+ assertEquals("charsetLink","US-ASCII",vcharset);
+
+}
+
+
+
+
+function runTest() {
+ anchor02();
+}
diff --git a/LayoutTests/dom/html/level2/html/anchor03-expected.txt b/LayoutTests/dom/html/level2/html/anchor03-expected.txt
new file mode 100644
index 0000000..729af1d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/anchor03.html b/LayoutTests/dom/html/level2/html/anchor03.html
new file mode 100644
index 0000000..5380d05
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor03.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='anchor03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/anchor03.js b/LayoutTests/dom/html/level2/html/anchor03.js
new file mode 100644
index 0000000..ddc9e4d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor03.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Comma-separated list of lengths, defining an active region geometry.
+The value of attribute coords of the anchor element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92079539
+*/
+function anchor03() {
+ var success;
+ if(checkInitialization(builder, "anchor03") != null) return;
+ var nodeList;
+ var testNode;
+ var vcoords;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcoords = testNode.coords;
+
+ assertEquals("coordsLink","0,0,100,100",vcoords);
+
+}
+
+
+
+
+function runTest() {
+ anchor03();
+}
diff --git a/LayoutTests/dom/html/level2/html/anchor04-expected.txt b/LayoutTests/dom/html/level2/html/anchor04-expected.txt
new file mode 100644
index 0000000..56cf01c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/anchor04.html b/LayoutTests/dom/html/level2/html/anchor04.html
new file mode 100644
index 0000000..1e03ccf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor04.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='anchor04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/anchor04.js b/LayoutTests/dom/html/level2/html/anchor04.js
new file mode 100644
index 0000000..ffa595a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor04.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The URI of the linked resource.
+The value of attribute href of the anchor element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88517319
+*/
+function anchor04() {
+ var success;
+ if(checkInitialization(builder, "anchor04") != null) return;
+ var nodeList;
+ var testNode;
+ var vhref;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vhref = testNode.href;
+
+ assertURIEquals("hrefLink",null,null,null,"submit.gif",null,null,null,true,vhref);
+
+}
+
+
+
+
+function runTest() {
+ anchor04();
+}
diff --git a/LayoutTests/dom/html/level2/html/anchor05-expected.txt b/LayoutTests/dom/html/level2/html/anchor05-expected.txt
new file mode 100644
index 0000000..5d2afc3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/anchor05.html b/LayoutTests/dom/html/level2/html/anchor05.html
new file mode 100644
index 0000000..e983d84
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor05.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='anchor05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/anchor05.js b/LayoutTests/dom/html/level2/html/anchor05.js
new file mode 100644
index 0000000..8420c38
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor05.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Advisory content type.
+The value of attribute type of the anchor element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63938221
+*/
+function anchor05() {
+ var success;
+ if(checkInitialization(builder, "anchor05") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","image/gif",vtype);
+
+}
+
+
+
+
+function runTest() {
+ anchor05();
+}
diff --git a/LayoutTests/dom/html/level2/html/anchor06-expected.txt b/LayoutTests/dom/html/level2/html/anchor06-expected.txt
new file mode 100644
index 0000000..280f882
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/anchor06.html b/LayoutTests/dom/html/level2/html/anchor06.html
new file mode 100644
index 0000000..245438f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor06.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='anchor06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/anchor06.js b/LayoutTests/dom/html/level2/html/anchor06.js
new file mode 100644
index 0000000..ed88076
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/anchor06.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The shape of the active area. The coordinates are given by coords
+The value of attribute shape of the anchor element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49899808
+*/
+function anchor06() {
+ var success;
+ if(checkInitialization(builder, "anchor06") != null) return;
+ var nodeList;
+ var testNode;
+ var vshape;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ nodeList = doc.getElementsByTagName("a");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vshape = testNode.shape;
+
+ assertEquals("shapeLink","rect",vshape);
+
+}
+
+
+
+
+function runTest() {
+ anchor06();
+}
diff --git a/LayoutTests/dom/html/level2/html/applets/DOMTSApplet.dat b/LayoutTests/dom/html/level2/html/applets/DOMTSApplet.dat
new file mode 100644
index 0000000..e1370ba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/applets/DOMTSApplet.dat
Binary files differ
diff --git a/LayoutTests/dom/html/level2/html/applets/org/w3c/domts/DOMTSApplet.class b/LayoutTests/dom/html/level2/html/applets/org/w3c/domts/DOMTSApplet.class
new file mode 100644
index 0000000..1793309
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/applets/org/w3c/domts/DOMTSApplet.class
Binary files differ
diff --git a/LayoutTests/dom/html/level2/html/area01-expected.txt b/LayoutTests/dom/html/level2/html/area01-expected.txt
new file mode 100644
index 0000000..21ca888
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/area01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/area01.html b/LayoutTests/dom/html/level2/html/area01.html
new file mode 100644
index 0000000..fd1c688
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area01.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='area01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/area01.js b/LayoutTests/dom/html/level2/html/area01.js
new file mode 100644
index 0000000..2618e37
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area01.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/area01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66021476
+*/
+function area01() {
+ var success;
+ if(checkInitialization(builder, "area01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcoords;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcoords = testNode.coords;
+
+ assertEquals("coordsLink","0,2,45,45",vcoords);
+
+}
+
+
+
+
+function runTest() {
+ area01();
+}
diff --git a/LayoutTests/dom/html/level2/html/area02-expected.txt b/LayoutTests/dom/html/level2/html/area02-expected.txt
new file mode 100644
index 0000000..19648ee
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/area02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/area02.html b/LayoutTests/dom/html/level2/html/area02.html
new file mode 100644
index 0000000..f23513b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area02.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='area02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/area02.js b/LayoutTests/dom/html/level2/html/area02.js
new file mode 100644
index 0000000..cc9423d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area02.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/area02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-61826871
+*/
+function area02() {
+ var success;
+ if(checkInitialization(builder, "area02") != null) return;
+ var nodeList;
+ var testNode;
+ var vnohref;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vnohref = testNode.noHref;
+
+ assertFalse("noHrefLink",vnohref);
+
+}
+
+
+
+
+function runTest() {
+ area02();
+}
diff --git a/LayoutTests/dom/html/level2/html/area03-expected.txt b/LayoutTests/dom/html/level2/html/area03-expected.txt
new file mode 100644
index 0000000..5969dfd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/area03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/area03.html b/LayoutTests/dom/html/level2/html/area03.html
new file mode 100644
index 0000000..054ae76
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area03.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='area03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/area03.js b/LayoutTests/dom/html/level2/html/area03.js
new file mode 100644
index 0000000..50ba760
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area03.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/area03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8722121
+*/
+function area03() {
+ var success;
+ if(checkInitialization(builder, "area03") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",10,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ area03();
+}
diff --git a/LayoutTests/dom/html/level2/html/area04-expected.txt b/LayoutTests/dom/html/level2/html/area04-expected.txt
new file mode 100644
index 0000000..3e187e8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/area04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/area04.html b/LayoutTests/dom/html/level2/html/area04.html
new file mode 100644
index 0000000..9e5f7fc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area04.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Area</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='area04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect" ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html" TITLE="Domain">
+</MAP>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/area04.js b/LayoutTests/dom/html/level2/html/area04.js
new file mode 100644
index 0000000..94b29d2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/area04.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/area04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "area");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57944457
+*/
+function area04() {
+ var success;
+ if(checkInitialization(builder, "area04") != null) return;
+ var nodeList;
+ var testNode;
+ var vaccesskey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "area");
+ nodeList = doc.getElementsByTagName("area");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vaccesskey = testNode.accessKey;
+
+ assertEquals("accessKeyLink","a",vaccesskey);
+
+}
+
+
+
+
+function runTest() {
+ area04();
+}
diff --git a/LayoutTests/dom/html/level2/html/basefont01-expected.txt b/LayoutTests/dom/html/level2/html/basefont01-expected.txt
new file mode 100644
index 0000000..a524b14
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/basefont01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/basefont01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/basefont01.html b/LayoutTests/dom/html/level2/html/basefont01.html
new file mode 100644
index 0000000..5ecf781
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/basefont01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - BaseFont</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='basefont01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<BASEFONT COLOR="#000000" FACE="arial,helvitica" SIZE="4">
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/basefont01.js b/LayoutTests/dom/html/level2/html/basefont01.js
new file mode 100644
index 0000000..5510753
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/basefont01.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/basefont01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "basefont");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The value of attribute color of the basefont element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87502302
+*/
+function basefont01() {
+ var success;
+ if(checkInitialization(builder, "basefont01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "basefont");
+ nodeList = doc.getElementsByTagName("basefont");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcolor = testNode.color;
+
+ assertEquals("colorLink","#000000",vcolor);
+
+}
+
+
+
+
+function runTest() {
+ basefont01();
+}
diff --git a/LayoutTests/dom/html/level2/html/body01-expected.txt b/LayoutTests/dom/html/level2/html/body01-expected.txt
new file mode 100644
index 0000000..9a36cb8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/body01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/body01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/body01.html b/LayoutTests/dom/html/level2/html/body01.html
new file mode 100644
index 0000000..e0237a3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/body01.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Body</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='body01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()" ALINK="#0000ff" BACKGROUND="./pix/back1.gif" BGCOLOR="#ffff00" LINK="#ff0000" TEXT="#000000" VLINK="#00ffff">
+<P>Hello, World</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/body01.js b/LayoutTests/dom/html/level2/html/body01.js
new file mode 100644
index 0000000..18f23d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/body01.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/body01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "body");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Color of active links (after mouse-button down, but before mouse-button up).
+The value of attribute alink of the body element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59424581
+*/
+function body01() {
+ var success;
+ if(checkInitialization(builder, "body01") != null) return;
+ var nodeList;
+ var testNode;
+ var valink;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "body");
+ nodeList = doc.getElementsByTagName("body");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valink = testNode.aLink;
+
+ assertEquals("aLinkLink","#0000ff",valink);
+
+}
+
+
+
+
+function runTest() {
+ body01();
+}
diff --git a/LayoutTests/dom/html/level2/html/button01-expected.txt b/LayoutTests/dom/html/level2/html/button01-expected.txt
new file mode 100644
index 0000000..f29f45c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button01.html b/LayoutTests/dom/html/level2/html/button01.html
new file mode 100644
index 0000000..688fee1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button01.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button01.js b/LayoutTests/dom/html/level2/html/button01.js
new file mode 100644
index 0000000..41de8a5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button01.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Returns the FORM element containing this control. Returns null if this control is not within the context of a form.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493
+*/
+function button01() {
+ var success;
+ if(checkInitialization(builder, "button01") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vform = testNode.form;
+
+ assertNull("formLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ button01();
+}
diff --git a/LayoutTests/dom/html/level2/html/button02-expected.txt b/LayoutTests/dom/html/level2/html/button02-expected.txt
new file mode 100644
index 0000000..280247b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button02.html b/LayoutTests/dom/html/level2/html/button02.html
new file mode 100644
index 0000000..2b7c890
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button02.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button02.js b/LayoutTests/dom/html/level2/html/button02.js
new file mode 100644
index 0000000..0fe0f31
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The value of attribute name of the form element which contains this button is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901
+*/
+function button02() {
+ var success;
+ if(checkInitialization(builder, "button02") != null) return;
+ var nodeList;
+ var testNode;
+ var formNode;
+ var vfname;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ formNode = testNode.form;
+
+ vfname = formNode.id;
+
+ assertEquals("formLink","form2",vfname);
+
+}
+
+
+
+
+function runTest() {
+ button02();
+}
diff --git a/LayoutTests/dom/html/level2/html/button03-expected.txt b/LayoutTests/dom/html/level2/html/button03-expected.txt
new file mode 100644
index 0000000..8f4fcf8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button03.html b/LayoutTests/dom/html/level2/html/button03.html
new file mode 100644
index 0000000..9820340
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button03.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button03.js b/LayoutTests/dom/html/level2/html/button03.js
new file mode 100644
index 0000000..1a4ac91
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button03.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The value of attribute action of the form element which contains this button is read and checked against the expected value
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74049184
+*/
+function button03() {
+ var success;
+ if(checkInitialization(builder, "button03") != null) return;
+ var nodeList;
+ var testNode;
+ var formNode;
+ var vfaction;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ formNode = testNode.form;
+
+ vfaction = formNode.action;
+
+ assertEquals("formLink","...",vfaction);
+
+}
+
+
+
+
+function runTest() {
+ button03();
+}
diff --git a/LayoutTests/dom/html/level2/html/button04-expected.txt b/LayoutTests/dom/html/level2/html/button04-expected.txt
new file mode 100644
index 0000000..a746197
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button04.html b/LayoutTests/dom/html/level2/html/button04.html
new file mode 100644
index 0000000..45db334
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button04.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button04.js b/LayoutTests/dom/html/level2/html/button04.js
new file mode 100644
index 0000000..147f1b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The value of attribute method of the form element which contains this button is read and checked against the expected value
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82545539
+*/
+function button04() {
+ var success;
+ if(checkInitialization(builder, "button04") != null) return;
+ var nodeList;
+ var testNode;
+ var formNode;
+ var vfmethod;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ formNode = testNode.form;
+
+ vfmethod = formNode.method;
+
+ assertEquals("formLink","POST".toLowerCase(),vfmethod.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ button04();
+}
diff --git a/LayoutTests/dom/html/level2/html/button05-expected.txt b/LayoutTests/dom/html/level2/html/button05-expected.txt
new file mode 100644
index 0000000..6a9a604
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button05.html b/LayoutTests/dom/html/level2/html/button05.html
new file mode 100644
index 0000000..9a6ceac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button05.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button05.js b/LayoutTests/dom/html/level2/html/button05.js
new file mode 100644
index 0000000..4391467
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button05.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+A single character access key to give access to the form control.
+The value of attribute accessKey of the button element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73169431
+*/
+function button05() {
+ var success;
+ if(checkInitialization(builder, "button05") != null) return;
+ var nodeList;
+ var testNode;
+ var vakey;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vakey = testNode.accessKey;
+
+ assertEquals("accessKeyLink","f".toLowerCase(),vakey.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ button05();
+}
diff --git a/LayoutTests/dom/html/level2/html/button06-expected.txt b/LayoutTests/dom/html/level2/html/button06-expected.txt
new file mode 100644
index 0000000..a68a334
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button06.html b/LayoutTests/dom/html/level2/html/button06.html
new file mode 100644
index 0000000..4089947
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button06.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button06.js b/LayoutTests/dom/html/level2/html/button06.js
new file mode 100644
index 0000000..19707c8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button06.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Index that represents the element's position in the tabbing order.
+The value of attribute tabIndex of the button element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39190908
+*/
+function button06() {
+ var success;
+ if(checkInitialization(builder, "button06") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabIndex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtabIndex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",20,vtabIndex);
+
+}
+
+
+
+
+function runTest() {
+ button06();
+}
diff --git a/LayoutTests/dom/html/level2/html/button07-expected.txt b/LayoutTests/dom/html/level2/html/button07-expected.txt
new file mode 100644
index 0000000..9cc4dae
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button07.html b/LayoutTests/dom/html/level2/html/button07.html
new file mode 100644
index 0000000..7621297
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button07.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button07.js b/LayoutTests/dom/html/level2/html/button07.js
new file mode 100644
index 0000000..ae7d6c5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button07.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The type of button
+The value of attribute type of the button element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27430092
+*/
+function button07() {
+ var success;
+ if(checkInitialization(builder, "button07") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","reset",vtype);
+
+}
+
+
+
+
+function runTest() {
+ button07();
+}
diff --git a/LayoutTests/dom/html/level2/html/button08-expected.txt b/LayoutTests/dom/html/level2/html/button08-expected.txt
new file mode 100644
index 0000000..242d5ad
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button08.html b/LayoutTests/dom/html/level2/html/button08.html
new file mode 100644
index 0000000..75b7450
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button08.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button08.js b/LayoutTests/dom/html/level2/html/button08.js
new file mode 100644
index 0000000..e5d76de
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button08.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The control is unavailable in this context.
+The boolean value of attribute disabled of the button element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92757155
+*/
+function button08() {
+ var success;
+ if(checkInitialization(builder, "button08") != null) return;
+ var nodeList;
+ var testNode;
+ var vdisabled;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vdisabled = testNode.disabled;
+
+ assertTrue("disabledLink",vdisabled);
+
+}
+
+
+
+
+function runTest() {
+ button08();
+}
diff --git a/LayoutTests/dom/html/level2/html/button09-expected.txt b/LayoutTests/dom/html/level2/html/button09-expected.txt
new file mode 100644
index 0000000..e3808af
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/button09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/button09.html b/LayoutTests/dom/html/level2/html/button09.html
new file mode 100644
index 0000000..007216d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button09.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Button</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='button09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<FORM ID="form2" ACTION="..." METHOD="POST">
+<P>
+ <BUTTON ACCESSKEY="f" NAME="disabledButton" TABINDEX="20" TYPE="reset" VALUE="Reset Disabled Button" DISABLED="disabled">Reset</BUTTON>
+</P>
+</FORM>
+<TABLE SUMMARY="Extra Button Table">
+<TR>
+<TD>
+<BUTTON>Extra Button</BUTTON>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/button09.js b/LayoutTests/dom/html/level2/html/button09.js
new file mode 100644
index 0000000..c4edb87
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/button09.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/button09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "button");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The current form control value.
+The value of attribute value of the button element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72856782
+*/
+function button09() {
+ var success;
+ if(checkInitialization(builder, "button09") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalue;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "button");
+ nodeList = doc.getElementsByTagName("button");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vvalue = testNode.value;
+
+ assertEquals("typeLink","Reset Disabled Button",vvalue);
+
+}
+
+
+
+
+function runTest() {
+ button09();
+}
diff --git a/LayoutTests/dom/html/level2/html/dlist01-expected.txt b/LayoutTests/dom/html/level2/html/dlist01-expected.txt
new file mode 100644
index 0000000..5c0f0be
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/dlist01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/dlist01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/dlist01.html b/LayoutTests/dom/html/level2/html/dlist01.html
new file mode 100644
index 0000000..1c3ed1c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/dlist01.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='dlist01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<DL COMPACT="COMPACT">
+<DD>Accountant</DD>
+<DD>56,000</DD>
+<DD>Female</DD>
+<DD>1230 North Ave. Dallas, Texas 98551</DD>
+</DL>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/dlist01.js b/LayoutTests/dom/html/level2/html/dlist01.js
new file mode 100644
index 0000000..1e28485
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/dlist01.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/dlist01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "dl");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21738539
+*/
+function dlist01() {
+ var success;
+ if(checkInitialization(builder, "dlist01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcompact;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "dl");
+ nodeList = doc.getElementsByTagName("dl");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcompact = testNode.compact;
+
+ assertTrue("compactLink",vcompact);
+
+}
+
+
+
+
+function runTest() {
+ dlist01();
+}
diff --git a/LayoutTests/dom/html/level2/html/doc01-expected.txt b/LayoutTests/dom/html/level2/html/doc01-expected.txt
new file mode 100644
index 0000000..0273a9f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/doc01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/doc01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/doc01.html b/LayoutTests/dom/html/level2/html/doc01.html
new file mode 100644
index 0000000..e78fc61
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/doc01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - Anchor</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='doc01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif" ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100" SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET" HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22" NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/doc01.js b/LayoutTests/dom/html/level2/html/doc01.js
new file mode 100644
index 0000000..64b1eed
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/doc01.js
@@ -0,0 +1,106 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/doc01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "anchor");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Retrieve the title attribute of HTMLDocument and examine it's value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18446827
+*/
+function doc01() {
+ var success;
+ if(checkInitialization(builder, "doc01") != null) return;
+ var vtitle;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "anchor");
+ vtitle = doc.title;
+
+ assertEquals("titleLink","NIST DOM HTML Test - Anchor",vtitle);
+
+}
+
+
+
+
+function runTest() {
+ doc01();
+}
diff --git a/LayoutTests/dom/html/level2/html/hasFeature01-expected.txt b/LayoutTests/dom/html/level2/html/hasFeature01-expected.txt
new file mode 100644
index 0000000..df1756f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/hasFeature01.html b/LayoutTests/dom/html/level2/html/hasFeature01.html
new file mode 100644
index 0000000..9314913
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature01.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<html>
+<!--
+Copyright(c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>implementation</title>
+ <script type='text/javascript' src='selfhtml.js'></script>
+ <script type='text/javascript' charset='UTF-8' src='hasFeature01.js'></script>
+ <script type='text/javascript'>function loadComplete() { startTest(); }</script>
+ </head>
+ <body onload="loadComplete()">
+ </body>
+</html>
+
+
diff --git a/LayoutTests/dom/html/level2/html/hasFeature01.js b/LayoutTests/dom/html/level2/html/hasFeature01.js
new file mode 100644
index 0000000..e870c7b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature01.js
@@ -0,0 +1,96 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ if (docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+hasFeature("hTmL", null) should return true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7
+*/
+function hasFeature01() {
+ var success;
+ if(checkInitialization(builder, "hasFeature01") != null) return;
+ var doc;
+ var domImpl;
+ var version = null;
+
+ var state;
+ domImpl = getImplementation();
+state = domImpl.hasFeature("hTmL",version);
+assertTrue("hasHTMLnull",state);
+
+}
+
+
+
+
+function runTest() {
+ hasFeature01();
+}
diff --git a/LayoutTests/dom/html/level2/html/hasFeature02-expected.txt b/LayoutTests/dom/html/level2/html/hasFeature02-expected.txt
new file mode 100644
index 0000000..9f664c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/hasFeature02.html b/LayoutTests/dom/html/level2/html/hasFeature02.html
new file mode 100644
index 0000000..8ed9708
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature02.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<html>
+<!--
+Copyright(c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>implementation</title>
+ <script type='text/javascript' src='selfhtml.js'></script>
+ <script type='text/javascript' charset='UTF-8' src='hasFeature02.js'></script>
+ <script type='text/javascript'>function loadComplete() { startTest(); }</script>
+ </head>
+ <body onload="loadComplete()">
+ </body>
+</html>
+
+
diff --git a/LayoutTests/dom/html/level2/html/hasFeature02.js b/LayoutTests/dom/html/level2/html/hasFeature02.js
new file mode 100644
index 0000000..9cfd7bd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature02.js
@@ -0,0 +1,95 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ if (docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+hasFeature("hTmL", "2.0") should return true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7
+*/
+function hasFeature02() {
+ var success;
+ if(checkInitialization(builder, "hasFeature02") != null) return;
+ var doc;
+ var domImpl;
+ var version = "2.0";
+ var state;
+ domImpl = getImplementation();
+state = domImpl.hasFeature("hTmL",version);
+assertTrue("hasHTML2",state);
+
+}
+
+
+
+
+function runTest() {
+ hasFeature02();
+}
diff --git a/LayoutTests/dom/html/level2/html/hasFeature03-expected.txt b/LayoutTests/dom/html/level2/html/hasFeature03-expected.txt
new file mode 100644
index 0000000..b429946
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/hasFeature03.html b/LayoutTests/dom/html/level2/html/hasFeature03.html
new file mode 100644
index 0000000..e856fbc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature03.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<html>
+<!--
+Copyright(c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>implementation</title>
+ <script type='text/javascript' src='selfhtml.js'></script>
+ <script type='text/javascript' charset='UTF-8' src='hasFeature03.js'></script>
+ <script type='text/javascript'>function loadComplete() { startTest(); }</script>
+ </head>
+ <body onload="loadComplete()">
+ </body>
+</html>
+
+
diff --git a/LayoutTests/dom/html/level2/html/hasFeature03.js b/LayoutTests/dom/html/level2/html/hasFeature03.js
new file mode 100644
index 0000000..51833a8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature03.js
@@ -0,0 +1,98 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ if (docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+hasFeature("xhTmL", null) should return true if hasFeature("XML", null) returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7
+*/
+function hasFeature03() {
+ var success;
+ if(checkInitialization(builder, "hasFeature03") != null) return;
+ var doc;
+ var domImpl;
+ var version = null;
+
+ var state;
+ var hasXML;
+ domImpl = getImplementation();
+hasXML = domImpl.hasFeature("XML",version);
+state = domImpl.hasFeature("xhTmL",version);
+assertEquals("hasXHTML",hasXML,state);
+
+}
+
+
+
+
+function runTest() {
+ hasFeature03();
+}
diff --git a/LayoutTests/dom/html/level2/html/hasFeature04-expected.txt b/LayoutTests/dom/html/level2/html/hasFeature04-expected.txt
new file mode 100644
index 0000000..7dce7c5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/hasFeature04.html b/LayoutTests/dom/html/level2/html/hasFeature04.html
new file mode 100644
index 0000000..0b2f3f7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature04.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<html>
+<!--
+Copyright(c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>implementation</title>
+ <script type='text/javascript' src='selfhtml.js'></script>
+ <script type='text/javascript' charset='UTF-8' src='hasFeature04.js'></script>
+ <script type='text/javascript'>function loadComplete() { startTest(); }</script>
+ </head>
+ <body onload="loadComplete()">
+ </body>
+</html>
+
+
diff --git a/LayoutTests/dom/html/level2/html/hasFeature04.js b/LayoutTests/dom/html/level2/html/hasFeature04.js
new file mode 100644
index 0000000..eff5b4b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature04.js
@@ -0,0 +1,97 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ if (docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+hasFeature("xhTmL", "2.0") should return true if hasFeature("XML", "2.0") returns true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7
+*/
+function hasFeature04() {
+ var success;
+ if(checkInitialization(builder, "hasFeature04") != null) return;
+ var doc;
+ var domImpl;
+ var version = "2.0";
+ var state;
+ var hasXML;
+ domImpl = getImplementation();
+hasXML = domImpl.hasFeature("XML",version);
+state = domImpl.hasFeature("xhTmL",version);
+assertEquals("hasXHTML",hasXML,state);
+
+}
+
+
+
+
+function runTest() {
+ hasFeature04();
+}
diff --git a/LayoutTests/dom/html/level2/html/hasFeature05-expected.txt b/LayoutTests/dom/html/level2/html/hasFeature05-expected.txt
new file mode 100644
index 0000000..69b2a72
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/hasFeature05.html b/LayoutTests/dom/html/level2/html/hasFeature05.html
new file mode 100644
index 0000000..45300d8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature05.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<html>
+<!--
+Copyright(c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>implementation</title>
+ <script type='text/javascript' src='selfhtml.js'></script>
+ <script type='text/javascript' charset='UTF-8' src='hasFeature05.js'></script>
+ <script type='text/javascript'>function loadComplete() { startTest(); }</script>
+ </head>
+ <body onload="loadComplete()">
+ </body>
+</html>
+
+
diff --git a/LayoutTests/dom/html/level2/html/hasFeature05.js b/LayoutTests/dom/html/level2/html/hasFeature05.js
new file mode 100644
index 0000000..b6110cc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature05.js
@@ -0,0 +1,96 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ if (docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+hasFeature("cOrE", null) should return true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7
+*/
+function hasFeature05() {
+ var success;
+ if(checkInitialization(builder, "hasFeature05") != null) return;
+ var doc;
+ var domImpl;
+ var version = null;
+
+ var state;
+ domImpl = getImplementation();
+state = domImpl.hasFeature("cOrE",version);
+assertTrue("hasCore",state);
+
+}
+
+
+
+
+function runTest() {
+ hasFeature05();
+}
diff --git a/LayoutTests/dom/html/level2/html/hasFeature06-expected.txt b/LayoutTests/dom/html/level2/html/hasFeature06-expected.txt
new file mode 100644
index 0000000..1d01ed4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/hasFeature06.html b/LayoutTests/dom/html/level2/html/hasFeature06.html
new file mode 100644
index 0000000..791b71b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature06.html
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd" >
+<html>
+<!--
+Copyright(c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C(r) Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+-->
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>implementation</title>
+ <script type='text/javascript' src='selfhtml.js'></script>
+ <script type='text/javascript' charset='UTF-8' src='hasFeature06.js'></script>
+ <script type='text/javascript'>function loadComplete() { startTest(); }</script>
+ </head>
+ <body onload="loadComplete()">
+ </body>
+</html>
+
+
diff --git a/LayoutTests/dom/html/level2/html/hasFeature06.js b/LayoutTests/dom/html/level2/html/hasFeature06.js
new file mode 100644
index 0000000..8981ec7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/hasFeature06.js
@@ -0,0 +1,95 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ if (docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 0) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+hasFeature("cOrE", "2.0") should return true.
+
+* @author Curt Arnold
+* @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7
+*/
+function hasFeature06() {
+ var success;
+ if(checkInitialization(builder, "hasFeature06") != null) return;
+ var doc;
+ var domImpl;
+ var version = "2.0";
+ var state;
+ domImpl = getImplementation();
+state = domImpl.hasFeature("cOrE",version);
+assertTrue("hasCore",state);
+
+}
+
+
+
+
+function runTest() {
+ hasFeature06();
+}
diff --git a/LayoutTests/dom/html/level2/html/object01-expected.txt b/LayoutTests/dom/html/level2/html/object01-expected.txt
new file mode 100644
index 0000000..bafb597
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object01.html b/LayoutTests/dom/html/level2/html/object01.html
new file mode 100644
index 0000000..74dba22
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object01.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object01.js b/LayoutTests/dom/html/level2/html/object01.js
new file mode 100644
index 0000000..d2889b1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object01.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Returns the FORM element containing this control. Returns null if this control is not within the context of a form.
+The value of attribute form of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773
+*/
+function object01() {
+ var success;
+ if(checkInitialization(builder, "object01") != null) return;
+ var nodeList;
+ var testNode;
+ var vform;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vform = testNode.form;
+
+ assertNull("formLink",vform);
+
+}
+
+
+
+
+function runTest() {
+ object01();
+}
diff --git a/LayoutTests/dom/html/level2/html/object02-expected.txt b/LayoutTests/dom/html/level2/html/object02-expected.txt
new file mode 100644
index 0000000..254055b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object02.html b/LayoutTests/dom/html/level2/html/object02.html
new file mode 100644
index 0000000..01d1263
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object02.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object02.js b/LayoutTests/dom/html/level2/html/object02.js
new file mode 100644
index 0000000..69433a9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object02.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Aligns this object (vertically or horizontally) with respect to its surrounding text.
+The value of attribute align of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16962097
+*/
+function object02() {
+ var success;
+ if(checkInitialization(builder, "object02") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","middle",valign);
+
+}
+
+
+
+
+function runTest() {
+ object02();
+}
diff --git a/LayoutTests/dom/html/level2/html/object03-expected.txt b/LayoutTests/dom/html/level2/html/object03-expected.txt
new file mode 100644
index 0000000..82e3d69
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object03.html b/LayoutTests/dom/html/level2/html/object03.html
new file mode 100644
index 0000000..42024dc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object03.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object03.js b/LayoutTests/dom/html/level2/html/object03.js
new file mode 100644
index 0000000..3a2b7dd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object03.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Space-separated list of archives
+The value of attribute archive of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47783837
+*/
+function object03() {
+ var success;
+ if(checkInitialization(builder, "object03") != null) return;
+ var nodeList;
+ var testNode;
+ var varchive;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ varchive = testNode.archive;
+
+ assertEquals("archiveLink","",varchive);
+
+}
+
+
+
+
+function runTest() {
+ object03();
+}
diff --git a/LayoutTests/dom/html/level2/html/object04-expected.txt b/LayoutTests/dom/html/level2/html/object04-expected.txt
new file mode 100644
index 0000000..41ee8b4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object04.html b/LayoutTests/dom/html/level2/html/object04.html
new file mode 100644
index 0000000..c8f64a6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object04.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object04.js b/LayoutTests/dom/html/level2/html/object04.js
new file mode 100644
index 0000000..3f274b6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object04.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Width of border around the object.
+The value of attribute border of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82818419
+*/
+function object04() {
+ var success;
+ if(checkInitialization(builder, "object04") != null) return;
+ var nodeList;
+ var testNode;
+ var vborder;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vborder = testNode.border;
+
+ assertEquals("borderLink","0",vborder);
+
+}
+
+
+
+
+function runTest() {
+ object04();
+}
diff --git a/LayoutTests/dom/html/level2/html/object05-expected.txt b/LayoutTests/dom/html/level2/html/object05-expected.txt
new file mode 100644
index 0000000..f51157a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object05-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object05
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object05.html b/LayoutTests/dom/html/level2/html/object05.html
new file mode 100644
index 0000000..858b965
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object05.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object05.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object05.js b/LayoutTests/dom/html/level2/html/object05.js
new file mode 100644
index 0000000..957cd53
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object05.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object05";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Base URI for classid, data, and archive attributes.
+The value of attribute codebase of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25709136
+*/
+function object05() {
+ var success;
+ if(checkInitialization(builder, "object05") != null) return;
+ var nodeList;
+ var testNode;
+ var vcodebase;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vcodebase = testNode.codeBase;
+
+ assertEquals("codebaseLink","http://xw2k.sdct.itl.nist.gov/brady/dom/",vcodebase);
+
+}
+
+
+
+
+function runTest() {
+ object05();
+}
diff --git a/LayoutTests/dom/html/level2/html/object06-expected.txt b/LayoutTests/dom/html/level2/html/object06-expected.txt
new file mode 100644
index 0000000..5c92579
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object06.js b/LayoutTests/dom/html/level2/html/object06.js
new file mode 100644
index 0000000..44e0a1e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object06.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+A URI specifying the location of the object's data.
+The value of attribute data of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-81766986
+*/
+function object06() {
+ var success;
+ if(checkInitialization(builder, "object06") != null) return;
+ var nodeList;
+ var testNode;
+ var vdata;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vdata = testNode.data;
+
+ assertEquals("dataLink","./pix/logo.gif",vdata);
+
+}
+
+
+
+
+function runTest() {
+ object06();
+}
diff --git a/LayoutTests/dom/html/level2/html/object07-expected.txt b/LayoutTests/dom/html/level2/html/object07-expected.txt
new file mode 100644
index 0000000..987d006
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object07.html b/LayoutTests/dom/html/level2/html/object07.html
new file mode 100644
index 0000000..73d925a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object07.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object07.js b/LayoutTests/dom/html/level2/html/object07.js
new file mode 100644
index 0000000..0a2b058
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object07.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The value of attribute height of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88925838
+*/
+function object07() {
+ var success;
+ if(checkInitialization(builder, "object07") != null) return;
+ var nodeList;
+ var testNode;
+ var vheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vheight = testNode.height;
+
+ assertEquals("heightLink","60",vheight);
+
+}
+
+
+
+
+function runTest() {
+ object07();
+}
diff --git a/LayoutTests/dom/html/level2/html/object08-expected.txt b/LayoutTests/dom/html/level2/html/object08-expected.txt
new file mode 100644
index 0000000..34e5e32
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object08.html b/LayoutTests/dom/html/level2/html/object08.html
new file mode 100644
index 0000000..c0221d1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object08.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object08.js b/LayoutTests/dom/html/level2/html/object08.js
new file mode 100644
index 0000000..0b67ca4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object08.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Horizontal space to the left and right of this image, applet, or object.
+The value of attribute hspace of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-17085376
+*/
+function object08() {
+ var success;
+ if(checkInitialization(builder, "object08") != null) return;
+ var nodeList;
+ var testNode;
+ var vhspace;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vhspace = testNode.hspace;
+
+ assertEquals("hspaceLink",0,vhspace);
+
+}
+
+
+
+
+function runTest() {
+ object08();
+}
diff --git a/LayoutTests/dom/html/level2/html/object09-expected.txt b/LayoutTests/dom/html/level2/html/object09-expected.txt
new file mode 100644
index 0000000..5d35142
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object09.html b/LayoutTests/dom/html/level2/html/object09.html
new file mode 100644
index 0000000..7039973
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object09.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object09.js b/LayoutTests/dom/html/level2/html/object09.js
new file mode 100644
index 0000000..c29a0ac
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object09.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Message to render while loading the object.
+The value of attribute standby of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25039673
+*/
+function object09() {
+ var success;
+ if(checkInitialization(builder, "object09") != null) return;
+ var nodeList;
+ var testNode;
+ var vstandby;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vstandby = testNode.standby;
+
+ assertEquals("standbyLink","Loading Image ...",vstandby);
+
+}
+
+
+
+
+function runTest() {
+ object09();
+}
diff --git a/LayoutTests/dom/html/level2/html/object10-expected.txt b/LayoutTests/dom/html/level2/html/object10-expected.txt
new file mode 100644
index 0000000..e029749
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object10.html b/LayoutTests/dom/html/level2/html/object10.html
new file mode 100644
index 0000000..03ee5f6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object10.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object10.js b/LayoutTests/dom/html/level2/html/object10.js
new file mode 100644
index 0000000..8323dd5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object10.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Index that represents the element's position in the tabbing order.
+The value of attribute tabIndex of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27083787
+*/
+function object10() {
+ var success;
+ if(checkInitialization(builder, "object10") != null) return;
+ var nodeList;
+ var testNode;
+ var vtabindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtabindex = testNode.tabIndex;
+
+ assertEquals("tabIndexLink",0,vtabindex);
+
+}
+
+
+
+
+function runTest() {
+ object10();
+}
diff --git a/LayoutTests/dom/html/level2/html/object11-expected.txt b/LayoutTests/dom/html/level2/html/object11-expected.txt
new file mode 100644
index 0000000..df8d11f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object11-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object11
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object11.html b/LayoutTests/dom/html/level2/html/object11.html
new file mode 100644
index 0000000..96f92d3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object11.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object11.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object11.js b/LayoutTests/dom/html/level2/html/object11.js
new file mode 100644
index 0000000..68e9d3e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object11.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object11";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Content type for data downloaded via data attribute.
+The value of attribute type of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91665621
+*/
+function object11() {
+ var success;
+ if(checkInitialization(builder, "object11") != null) return;
+ var nodeList;
+ var testNode;
+ var vtype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vtype = testNode.type;
+
+ assertEquals("typeLink","image/gif",vtype);
+
+}
+
+
+
+
+function runTest() {
+ object11();
+}
diff --git a/LayoutTests/dom/html/level2/html/object12-expected.txt b/LayoutTests/dom/html/level2/html/object12-expected.txt
new file mode 100644
index 0000000..d1a3cdb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object12.html b/LayoutTests/dom/html/level2/html/object12.html
new file mode 100644
index 0000000..c124ad0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object12.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object12.js b/LayoutTests/dom/html/level2/html/object12.js
new file mode 100644
index 0000000..9d49566
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object12.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The value of attribute usemap of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6649772
+*/
+function object12() {
+ var success;
+ if(checkInitialization(builder, "object12") != null) return;
+ var nodeList;
+ var testNode;
+ var vusemap;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vusemap = testNode.useMap;
+
+ assertEquals("useMapLink","#DivLogo-map",vusemap);
+
+}
+
+
+
+
+function runTest() {
+ object12();
+}
diff --git a/LayoutTests/dom/html/level2/html/object13-expected.txt b/LayoutTests/dom/html/level2/html/object13-expected.txt
new file mode 100644
index 0000000..1b2be82
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object13-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object13
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object13.html b/LayoutTests/dom/html/level2/html/object13.html
new file mode 100644
index 0000000..f26d710
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object13.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object13.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object13.js b/LayoutTests/dom/html/level2/html/object13.js
new file mode 100644
index 0000000..ae8cfa8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object13.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object13";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Vertical space above and below this image, applet, or object.
+The value of attribute vspace of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-8682483
+*/
+function object13() {
+ var success;
+ if(checkInitialization(builder, "object13") != null) return;
+ var nodeList;
+ var testNode;
+ var vvspace;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vvspace = testNode.vspace;
+
+ assertEquals("vspaceLink",0,vvspace);
+
+}
+
+
+
+
+function runTest() {
+ object13();
+}
diff --git a/LayoutTests/dom/html/level2/html/object14-expected.txt b/LayoutTests/dom/html/level2/html/object14-expected.txt
new file mode 100644
index 0000000..f174074
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object14-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object14
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object14.html b/LayoutTests/dom/html/level2/html/object14.html
new file mode 100644
index 0000000..26636b2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object14.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object14.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object14.js b/LayoutTests/dom/html/level2/html/object14.js
new file mode 100644
index 0000000..d72551a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object14.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object14";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The value of attribute width of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38538620
+*/
+function object14() {
+ var success;
+ if(checkInitialization(builder, "object14") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","550",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ object14();
+}
diff --git a/LayoutTests/dom/html/level2/html/object15-expected.txt b/LayoutTests/dom/html/level2/html/object15-expected.txt
new file mode 100644
index 0000000..63f250a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/object15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/object15.html b/LayoutTests/dom/html/level2/html/object15.html
new file mode 100644
index 0000000..a27e384
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object15.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - OBJECT</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='object15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<P>
+<OBJECT ALIGN="middle" ARCHIVE="" BORDER="0" CODEBASE="http://xw2k.sdct.itl.nist.gov/brady/dom/" DATA="./pix/logo.gif" HEIGHT="60" HSPACE="0" STANDBY="Loading Image ..." TABINDEX="0" TYPE="image/gif" USEMAP="#DivLogo-map" VSPACE="0" WIDTH="550"></OBJECT>
+</P>
+<FORM NAME="OBJECT2" ACTION="./files/getData.pl" METHOD="post">
+<P>
+<OBJECT DECLARE="declare" NAME="OBJECT2" CODETYPE="image/gif"></OBJECT>
+</P>
+</FORM>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/object15.js b/LayoutTests/dom/html/level2/html/object15.js
new file mode 100644
index 0000000..641ee94
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/object15.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/object15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "object");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Content type for data downloaded via classid attribute.
+The value of attribute codetype of the object element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19945008
+*/
+function object15() {
+ var success;
+ if(checkInitialization(builder, "object15") != null) return;
+ var nodeList;
+ var testNode;
+ var vcodetype;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "object");
+ nodeList = doc.getElementsByTagName("object");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vcodetype = testNode.codeType;
+
+ assertEquals("codeTypeLink","image/gif",vcodetype);
+
+}
+
+
+
+
+function runTest() {
+ object15();
+}
diff --git a/LayoutTests/dom/html/level2/html/resources/COPYRIGHT.html b/LayoutTests/dom/html/level2/html/resources/COPYRIGHT.html
new file mode 100644
index 0000000..e13d9aa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/resources/COPYRIGHT.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
+ <title>W3C IPR SOFTWARE NOTICE</title>
+<style type="text/css">
+<!--
+html, body { background: #fff; color: #000; } /* body for Windows IE3 */
+-->
+</style>
+ </head>
+ <body>
+ <h1>
+ W3C IPR SOFTWARE NOTICE
+ </h1>
+ <h3>
+ Copyright &copy; 2002-2004 <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved.
+ </h3>
+ <p>
+ The DOM Conformance Test Suite for Level 2 html is published under
+ the W3C Software Copyright Notice and License. The software
+ license requires "Notice of any changes or modifications to the
+ W3C files, including the date changes were made." Consequently,
+ modified versions of the DOM ECMAScript or Java tests must
+ document that they do not conform to the DOM Conformance Test
+ Suites; in the case of the Java language binding, the package
+ names can no longer be in the 'org.w3c' package.
+ </p>
+ <p>
+ <b>Note:</b> The original version of the W3C Software Copyright Notice
+ and License could be found at <a
+ href='http://www.w3.org/Consortium/Legal/copyright-software-19980720'>http://www.w3.org/Consortium/Legal/copyright-software-19980720</a>
+ </p>
+ <h3>
+ Copyright &copy; 1994-2004 <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved. http://www.w3.org/Consortium/Legal/
+ </h3>
+ <p>
+ This W3C work (including software, documents, or other related items) is
+ being provided by the copyright holders under the following license. By
+ obtaining, using and/or copying this work, you (the licensee) agree that
+ you have read, understood, and will comply with the following terms and
+ conditions:
+ </p>
+ <p>
+ Permission to use, copy, and modify this software and its documentation,
+ with or without modification,&nbsp; for any purpose and without fee or
+ royalty is hereby granted, provided that you include the following on ALL
+ copies of the software and documentation or portions thereof, including
+ modifications, that you make:
+ </p>
+ <ol>
+ <li>
+ The full text of this NOTICE in a location viewable to users of the
+ redistributed or derivative work.
+ </li>
+ <li>
+ Any pre-existing intellectual property disclaimers, notices, or terms
+ and conditions. If none exist, a short notice of the following form
+ (hypertext is preferred, text is permitted) should be used within the
+ body of any redistributed or derivative code: "Copyright &copy;
+ [$date-of-software] <a href="http://www.w3.org/">World Wide Web
+ Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
+ Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
+ National de Recherche en Informatique et en Automatique</a>, <a
+ href="http://www.keio.ac.jp/">Keio University</a>). All Rights
+ Reserved. http://www.w3.org/Consortium/Legal/"
+ </li>
+ <li>
+ Notice of any changes or modifications to the W3C files, including the
+ date changes were made. (We recommend you provide URIs to the location
+ from which the code is derived.)
+ </li>
+ </ol>
+ <p>
+ THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT
+ HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED,
+ INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS
+ FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR
+ DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
+ TRADEMARKS OR OTHER RIGHTS.
+ </p>
+ <p>
+ COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
+ CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
+ DOCUMENTATION.
+ </p>
+ <p>
+ The name and trademarks of copyright holders may NOT be used in
+ advertising or publicity pertaining to the software without specific,
+ written prior permission. Title to copyright in this software and any
+ associated documentation will at all times remain with copyright
+ holders.
+ </p>
+ </body>
+</html>
diff --git a/LayoutTests/dom/html/level2/html/resources/frame.html b/LayoutTests/dom/html/level2/html/resources/frame.html
new file mode 100644
index 0000000..da5a5bc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/resources/frame.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
+"http://www.w3.org/TR/html4/frameset.dtd">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - FRAMESET</TITLE>
+</HEAD>
+<FRAMESET COLS="20, 80">
+<FRAMESET ROWS="100, 200">
+<FRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" NORESIZE="NORESIZE" NAME="Frame1" FRAMEBORDER="1" SCROLLING="yes" SRC="../right.png">
+</FRAMESET>
+<FRAME SRC="../w3c_main.png">
+</FRAMESET>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/resources/iframe.html b/LayoutTests/dom/html/level2/html/resources/iframe.html
new file mode 100644
index 0000000..2dc22ad
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/resources/iframe.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - IFRAME</TITLE>
+</HEAD>
+<BODY>
+<IFRAME LONGDESC="about:blank" MARGINHEIGHT="10" MARGINWIDTH="5" WIDTH="60" HEIGHT="50" NAME="Iframe1" FRAMEBORDER="1" SCROLLING="yes" SRC="../right.png" ALIGN="top">IFRAME1</IFRAME>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/right.png b/LayoutTests/dom/html/level2/html/right.png
new file mode 100644
index 0000000..1442685
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/right.png
Binary files differ
diff --git a/LayoutTests/dom/html/level2/html/table01-expected.txt b/LayoutTests/dom/html/level2/html/table01-expected.txt
new file mode 100644
index 0000000..286e9d7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table01-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table01
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table01.html b/LayoutTests/dom/html/level2/html/table01.html
new file mode 100644
index 0000000..f12d910
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table01.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table01.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Empty Table">
+<tr><td>HTML can't abide empty table</td></tr>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table01.js b/LayoutTests/dom/html/level2/html/table01.js
new file mode 100644
index 0000000..58426ca
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table01.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table01";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table1");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Returns the table's CAPTION, or void if none exists.
+The value of attribute caption of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520
+*/
+function table01() {
+ var success;
+ if(checkInitialization(builder, "table01") != null) return;
+ var nodeList;
+ var testNode;
+ var vcaption;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table1");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vcaption = testNode.caption;
+
+ assertNull("captionLink",vcaption);
+
+}
+
+
+
+
+function runTest() {
+ table01();
+}
diff --git a/LayoutTests/dom/html/level2/html/table02-expected.txt b/LayoutTests/dom/html/level2/html/table02-expected.txt
new file mode 100644
index 0000000..768095b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table02-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table02
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table02.html b/LayoutTests/dom/html/level2/html/table02.html
new file mode 100644
index 0000000..cf9c94b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table02.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table02.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table02.js b/LayoutTests/dom/html/level2/html/table02.js
new file mode 100644
index 0000000..508e081
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table02.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table02";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Caption alignment with respect to the table.
+The value of attribute align of the tablecaption element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520
+*/
+function table02() {
+ var success;
+ if(checkInitialization(builder, "table02") != null) return;
+ var nodeList;
+ var testNode;
+ var vcaption;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vcaption = testNode.caption;
+
+ valign = vcaption.align;
+
+ assertEquals("alignLink","top",valign);
+
+}
+
+
+
+
+function runTest() {
+ table02();
+}
diff --git a/LayoutTests/dom/html/level2/html/table03-expected.txt b/LayoutTests/dom/html/level2/html/table03-expected.txt
new file mode 100644
index 0000000..ef9f25d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table03-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table03
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table03.html b/LayoutTests/dom/html/level2/html/table03.html
new file mode 100644
index 0000000..600937d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table03.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table03.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table03.js b/LayoutTests/dom/html/level2/html/table03.js
new file mode 100644
index 0000000..afd9a6d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table03.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table03";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Alignment character for cells in a column.
+The value of attribute ch of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944
+*/
+function table03() {
+ var success;
+ if(checkInitialization(builder, "table03") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tHead;
+
+ vch = vsection.ch;
+
+ assertEquals("chLink","*",vch);
+
+}
+
+
+
+
+function runTest() {
+ table03();
+}
diff --git a/LayoutTests/dom/html/level2/html/table04-expected.txt b/LayoutTests/dom/html/level2/html/table04-expected.txt
new file mode 100644
index 0000000..c8e9877
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table04-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table04
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table04.html b/LayoutTests/dom/html/level2/html/table04.html
new file mode 100644
index 0000000..f43dc53
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table04.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table04.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table04.js b/LayoutTests/dom/html/level2/html/table04.js
new file mode 100644
index 0000000..ae3d364
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table04.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table04";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Horizontal alignment of data in cells.
+The value of attribute align of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944
+*/
+function table04() {
+ var success;
+ if(checkInitialization(builder, "table04") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tHead;
+
+ valign = vsection.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ table04();
+}
diff --git a/LayoutTests/dom/html/level2/html/table06-expected.txt b/LayoutTests/dom/html/level2/html/table06-expected.txt
new file mode 100644
index 0000000..b3a71c3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table06-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table06
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table06.html b/LayoutTests/dom/html/level2/html/table06.html
new file mode 100644
index 0000000..4638b5f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table06.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table06.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table06.js b/LayoutTests/dom/html/level2/html/table06.js
new file mode 100644
index 0000000..58d692d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table06.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table06";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Vertical alignment of data in cells.
+The value of attribute valign of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function table06() {
+ var success;
+ if(checkInitialization(builder, "table06") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var vvAlign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tFoot;
+
+ vvAlign = vsection.vAlign;
+
+ assertEquals("vAlignLink","middle",vvAlign);
+
+}
+
+
+
+
+function runTest() {
+ table06();
+}
diff --git a/LayoutTests/dom/html/level2/html/table07-expected.txt b/LayoutTests/dom/html/level2/html/table07-expected.txt
new file mode 100644
index 0000000..404d05b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table07-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table07
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table07.html b/LayoutTests/dom/html/level2/html/table07.html
new file mode 100644
index 0000000..e9cfa12
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table07.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table07.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table07.js b/LayoutTests/dom/html/level2/html/table07.js
new file mode 100644
index 0000000..6315a7b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table07.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table07";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The collection of rows in this table section.
+The value of attribute rows of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function table07() {
+ var success;
+ if(checkInitialization(builder, "table07") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var vcollection;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tFoot;
+
+ vcollection = vsection.rows;
+
+ vrows = vcollection.length;
+
+ assertEquals("vrowsLink",1,vrows);
+
+}
+
+
+
+
+function runTest() {
+ table07();
+}
diff --git a/LayoutTests/dom/html/level2/html/table08-expected.txt b/LayoutTests/dom/html/level2/html/table08-expected.txt
new file mode 100644
index 0000000..b10f24b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table08-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table08
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table08.html b/LayoutTests/dom/html/level2/html/table08.html
new file mode 100644
index 0000000..3641560
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table08.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table08.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table08.js b/LayoutTests/dom/html/level2/html/table08.js
new file mode 100644
index 0000000..40b3146
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table08.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table08";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Horizontal alignment of data in cells.
+The value of attribute align of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function table08() {
+ var success;
+ if(checkInitialization(builder, "table08") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tFoot;
+
+ valign = vsection.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ table08();
+}
diff --git a/LayoutTests/dom/html/level2/html/table09-expected.txt b/LayoutTests/dom/html/level2/html/table09-expected.txt
new file mode 100644
index 0000000..9bdb9a0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table09-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table09
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table09.html b/LayoutTests/dom/html/level2/html/table09.html
new file mode 100644
index 0000000..befe120
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table09.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table09.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table09.js b/LayoutTests/dom/html/level2/html/table09.js
new file mode 100644
index 0000000..6238f96
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table09.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table09";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Vertical alignment of data in cells.
+The value of attribute valign of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944
+*/
+function table09() {
+ var success;
+ if(checkInitialization(builder, "table09") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tHead;
+
+ vvalign = vsection.vAlign;
+
+ assertEquals("alignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ table09();
+}
diff --git a/LayoutTests/dom/html/level2/html/table10-expected.txt b/LayoutTests/dom/html/level2/html/table10-expected.txt
new file mode 100644
index 0000000..4d4b1ba
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table10-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table10
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table10.html b/LayoutTests/dom/html/level2/html/table10.html
new file mode 100644
index 0000000..e7c8d89
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table10.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table10.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table10.js b/LayoutTests/dom/html/level2/html/table10.js
new file mode 100644
index 0000000..62f708a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table10.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table10";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Alignment character for cells in a column.
+The value of attribute ch of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function table10() {
+ var success;
+ if(checkInitialization(builder, "table10") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tFoot;
+
+ vch = vsection.ch;
+
+ assertEquals("chLink","+",vch);
+
+}
+
+
+
+
+function runTest() {
+ table10();
+}
diff --git a/LayoutTests/dom/html/level2/html/table12-expected.txt b/LayoutTests/dom/html/level2/html/table12-expected.txt
new file mode 100644
index 0000000..05c31a5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table12-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table12
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table12.html b/LayoutTests/dom/html/level2/html/table12.html
new file mode 100644
index 0000000..d501c28
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table12.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table12.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table12.js b/LayoutTests/dom/html/level2/html/table12.js
new file mode 100644
index 0000000..3c576cb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table12.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table12";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Offset of alignment character.
+The value of attribute choff of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function table12() {
+ var success;
+ if(checkInitialization(builder, "table12") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var vchoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tHead;
+
+ vchoff = vsection.chOff;
+
+ assertEquals("choffLink","1",vchoff);
+
+}
+
+
+
+
+function runTest() {
+ table12();
+}
diff --git a/LayoutTests/dom/html/level2/html/table15-expected.txt b/LayoutTests/dom/html/level2/html/table15-expected.txt
new file mode 100644
index 0000000..3e396fb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table15-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table15
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table15.html b/LayoutTests/dom/html/level2/html/table15.html
new file mode 100644
index 0000000..769f3c7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table15.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table15.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table15.js b/LayoutTests/dom/html/level2/html/table15.js
new file mode 100644
index 0000000..c4d752a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table15.js
@@ -0,0 +1,118 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table15";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The collection of rows in this table section.
+The value of attribute rows of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function table15() {
+ var success;
+ if(checkInitialization(builder, "table15") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var vcollection;
+ var vrows;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tHead;
+
+ vcollection = vsection.rows;
+
+ vrows = vcollection.length;
+
+ assertEquals("vrowsLink",1,vrows);
+
+}
+
+
+
+
+function runTest() {
+ table15();
+}
diff --git a/LayoutTests/dom/html/level2/html/table17-expected.txt b/LayoutTests/dom/html/level2/html/table17-expected.txt
new file mode 100644
index 0000000..45f0d60
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table17-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table17
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table17.html b/LayoutTests/dom/html/level2/html/table17.html
new file mode 100644
index 0000000..1461a33
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table17.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLESECTION</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table17.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TBODY>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle" CHAR="+" CHAROFF="2">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle" CHAR="$" CHAROFF="3">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
+
diff --git a/LayoutTests/dom/html/level2/html/table17.js b/LayoutTests/dom/html/level2/html/table17.js
new file mode 100644
index 0000000..945eff0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table17.js
@@ -0,0 +1,115 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table17";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablesection");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Offset of alignment character.
+The value of attribute chOff of the tablesection element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097
+*/
+function table17() {
+ var success;
+ if(checkInitialization(builder, "table17") != null) return;
+ var nodeList;
+ var testNode;
+ var vsection;
+ var vchoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablesection");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",2,nodeList);
+testNode = nodeList.item(1);
+ vsection = testNode.tFoot;
+
+ vchoff = vsection.chOff;
+
+ assertEquals("choffLink","2",vchoff);
+
+}
+
+
+
+
+function runTest() {
+ table17();
+}
diff --git a/LayoutTests/dom/html/level2/html/table18-expected.txt b/LayoutTests/dom/html/level2/html/table18-expected.txt
new file mode 100644
index 0000000..cbaea82
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table18-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table18
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table18.html b/LayoutTests/dom/html/level2/html/table18.html
new file mode 100644
index 0000000..057493d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table18.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table18.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table18.js b/LayoutTests/dom/html/level2/html/table18.js
new file mode 100644
index 0000000..e589021
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table18.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table18";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The index of this cell in the row.
+The value of attribute cellIndex of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363
+*/
+function table18() {
+ var success;
+ if(checkInitialization(builder, "table18") != null) return;
+ var nodeList;
+ var testNode;
+ var vcindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vcindex = testNode.cellIndex;
+
+ assertEquals("cellIndexLink",1,vcindex);
+
+}
+
+
+
+
+function runTest() {
+ table18();
+}
diff --git a/LayoutTests/dom/html/level2/html/table19-expected.txt b/LayoutTests/dom/html/level2/html/table19-expected.txt
new file mode 100644
index 0000000..d5a2243
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table19-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table19
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table19.html b/LayoutTests/dom/html/level2/html/table19.html
new file mode 100644
index 0000000..b7da462
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table19.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table19.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table19.js b/LayoutTests/dom/html/level2/html/table19.js
new file mode 100644
index 0000000..eb99625
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table19.js
@@ -0,0 +1,113 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table19";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Abbreviation for header cells.
+The index of this cell in the row.
+The value of attribute abbr of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037
+*/
+function table19() {
+ var success;
+ if(checkInitialization(builder, "table19") != null) return;
+ var nodeList;
+ var testNode;
+ var vabbr;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vabbr = testNode.abbr;
+
+ assertEquals("abbrLink","hd2",vabbr);
+
+}
+
+
+
+
+function runTest() {
+ table19();
+}
diff --git a/LayoutTests/dom/html/level2/html/table20-expected.txt b/LayoutTests/dom/html/level2/html/table20-expected.txt
new file mode 100644
index 0000000..9c12e8a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table20-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table20
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table20.html b/LayoutTests/dom/html/level2/html/table20.html
new file mode 100644
index 0000000..fc53cef
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table20.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table20.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table20.js b/LayoutTests/dom/html/level2/html/table20.js
new file mode 100644
index 0000000..bd59d68
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table20.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table20";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Names group of related headers.
+The value of attribute axis of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418
+*/
+function table20() {
+ var success;
+ if(checkInitialization(builder, "table20") != null) return;
+ var nodeList;
+ var testNode;
+ var vaxis;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vaxis = testNode.axis;
+
+ assertEquals("axisLink","center",vaxis);
+
+}
+
+
+
+
+function runTest() {
+ table20();
+}
diff --git a/LayoutTests/dom/html/level2/html/table21-expected.txt b/LayoutTests/dom/html/level2/html/table21-expected.txt
new file mode 100644
index 0000000..c26acb4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table21-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table21
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table21.html b/LayoutTests/dom/html/level2/html/table21.html
new file mode 100644
index 0000000..1a8c065
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table21.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table21.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table21.js b/LayoutTests/dom/html/level2/html/table21.js
new file mode 100644
index 0000000..edb7c32
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table21.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table21";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Horizontal alignment of data in cell.
+The value of attribute align of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879
+*/
+function table21() {
+ var success;
+ if(checkInitialization(builder, "table21") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ table21();
+}
diff --git a/LayoutTests/dom/html/level2/html/table22-expected.txt b/LayoutTests/dom/html/level2/html/table22-expected.txt
new file mode 100644
index 0000000..89a82b6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table22-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table22
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table22.html b/LayoutTests/dom/html/level2/html/table22.html
new file mode 100644
index 0000000..57d103e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table22.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table22.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table22.js b/LayoutTests/dom/html/level2/html/table22.js
new file mode 100644
index 0000000..d4cc8e6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table22.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table22";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Cell background color.
+The value of attribute bgColor of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431
+*/
+function table22() {
+ var success;
+ if(checkInitialization(builder, "table22") != null) return;
+ var nodeList;
+ var testNode;
+ var vbgcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vbgcolor = testNode.bgColor;
+
+ assertEquals("bgcolorLink","#FF0000".toLowerCase(),vbgcolor.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ table22();
+}
diff --git a/LayoutTests/dom/html/level2/html/table23-expected.txt b/LayoutTests/dom/html/level2/html/table23-expected.txt
new file mode 100644
index 0000000..ca54f50
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table23-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table23
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table23.html b/LayoutTests/dom/html/level2/html/table23.html
new file mode 100644
index 0000000..3d2d5fc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table23.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table23.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table23.js b/LayoutTests/dom/html/level2/html/table23.js
new file mode 100644
index 0000000..dc6c9c1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table23.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table23";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Alignment character for cells in a column.
+The value of attribute char of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780
+*/
+function table23() {
+ var success;
+ if(checkInitialization(builder, "table23") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vch = testNode.ch;
+
+ assertEquals("chLink",":",vch);
+
+}
+
+
+
+
+function runTest() {
+ table23();
+}
diff --git a/LayoutTests/dom/html/level2/html/table24-expected.txt b/LayoutTests/dom/html/level2/html/table24-expected.txt
new file mode 100644
index 0000000..036d0ce
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table24-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table24
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table24.html b/LayoutTests/dom/html/level2/html/table24.html
new file mode 100644
index 0000000..5e5a040
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table24.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table24.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table24.js b/LayoutTests/dom/html/level2/html/table24.js
new file mode 100644
index 0000000..2ebdef7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table24.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table24";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+offset of alignment character.
+The value of attribute chOff of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310
+*/
+function table24() {
+ var success;
+ if(checkInitialization(builder, "table24") != null) return;
+ var nodeList;
+ var testNode;
+ var vchoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vchoff = testNode.chOff;
+
+ assertEquals("chOffLink","1",vchoff);
+
+}
+
+
+
+
+function runTest() {
+ table24();
+}
diff --git a/LayoutTests/dom/html/level2/html/table25-expected.txt b/LayoutTests/dom/html/level2/html/table25-expected.txt
new file mode 100644
index 0000000..b6cceaa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table25-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table25
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table25.html b/LayoutTests/dom/html/level2/html/table25.html
new file mode 100644
index 0000000..b2c9617
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table25.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table25.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table25.js b/LayoutTests/dom/html/level2/html/table25.js
new file mode 100644
index 0000000..4db307c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table25.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table25";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Number of columns spanned by cell.
+The value of attribute colspan of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244
+*/
+function table25() {
+ var success;
+ if(checkInitialization(builder, "table25") != null) return;
+ var nodeList;
+ var testNode;
+ var vcolspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vcolspan = testNode.colSpan;
+
+ assertEquals("colSpanLink",1,vcolspan);
+
+}
+
+
+
+
+function runTest() {
+ table25();
+}
diff --git a/LayoutTests/dom/html/level2/html/table26-expected.txt b/LayoutTests/dom/html/level2/html/table26-expected.txt
new file mode 100644
index 0000000..aae7c7d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table26-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table26
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table26.html b/LayoutTests/dom/html/level2/html/table26.html
new file mode 100644
index 0000000..f272d19
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table26.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table26.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table26.js b/LayoutTests/dom/html/level2/html/table26.js
new file mode 100644
index 0000000..489917b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table26.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table26";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The value of attribute height of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212
+*/
+function table26() {
+ var success;
+ if(checkInitialization(builder, "table26") != null) return;
+ var nodeList;
+ var testNode;
+ var vheight;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vheight = testNode.height;
+
+ assertEquals("heightLink","50",vheight);
+
+}
+
+
+
+
+function runTest() {
+ table26();
+}
diff --git a/LayoutTests/dom/html/level2/html/table27-expected.txt b/LayoutTests/dom/html/level2/html/table27-expected.txt
new file mode 100644
index 0000000..362c5bc
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table27-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table27
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table27.html b/LayoutTests/dom/html/level2/html/table27.html
new file mode 100644
index 0000000..91b6b1d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table27.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table27.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table27.js b/LayoutTests/dom/html/level2/html/table27.js
new file mode 100644
index 0000000..97b5818
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table27.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table27";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Suppress word wrapping.
+The value of attribute nowrap of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045
+*/
+function table27() {
+ var success;
+ if(checkInitialization(builder, "table27") != null) return;
+ var nodeList;
+ var testNode;
+ var vnowrap;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vnowrap = testNode.noWrap;
+
+ assertTrue("nowrapLink",vnowrap);
+
+}
+
+
+
+
+function runTest() {
+ table27();
+}
diff --git a/LayoutTests/dom/html/level2/html/table28-expected.txt b/LayoutTests/dom/html/level2/html/table28-expected.txt
new file mode 100644
index 0000000..065446a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table28-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table28
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table28.html b/LayoutTests/dom/html/level2/html/table28.html
new file mode 100644
index 0000000..26af1e2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table28.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table28.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table28.js b/LayoutTests/dom/html/level2/html/table28.js
new file mode 100644
index 0000000..76f8019
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table28.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table28";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Number of rows spanned by cell.
+The value of attribute rowspan of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625
+*/
+function table28() {
+ var success;
+ if(checkInitialization(builder, "table28") != null) return;
+ var nodeList;
+ var testNode;
+ var vrowspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vrowspan = testNode.rowSpan;
+
+ assertEquals("rowSpanLink",1,vrowspan);
+
+}
+
+
+
+
+function runTest() {
+ table28();
+}
diff --git a/LayoutTests/dom/html/level2/html/table29-expected.txt b/LayoutTests/dom/html/level2/html/table29-expected.txt
new file mode 100644
index 0000000..cbe420f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table29-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table29
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table29.html b/LayoutTests/dom/html/level2/html/table29.html
new file mode 100644
index 0000000..ef440da
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table29.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table29.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table29.js b/LayoutTests/dom/html/level2/html/table29.js
new file mode 100644
index 0000000..4b22796
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table29.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table29";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Scope covered by header cells.
+The value of attribute scope of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952
+*/
+function table29() {
+ var success;
+ if(checkInitialization(builder, "table29") != null) return;
+ var nodeList;
+ var testNode;
+ var vscope;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vscope = testNode.scope;
+
+ assertEquals("scopeLink","col",vscope);
+
+}
+
+
+
+
+function runTest() {
+ table29();
+}
diff --git a/LayoutTests/dom/html/level2/html/table30-expected.txt b/LayoutTests/dom/html/level2/html/table30-expected.txt
new file mode 100644
index 0000000..abb94c4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table30-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table30
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table30.html b/LayoutTests/dom/html/level2/html/table30.html
new file mode 100644
index 0000000..6bb6f84
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table30.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table30.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table30.js b/LayoutTests/dom/html/level2/html/table30.js
new file mode 100644
index 0000000..1a9fb4c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table30.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table30";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+List of id attribute values for header cells.
+The value of attribute headers of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817
+*/
+function table30() {
+ var success;
+ if(checkInitialization(builder, "table30") != null) return;
+ var nodeList;
+ var testNode;
+ var vheaders;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vheaders = testNode.headers;
+
+ assertEquals("headersLink","header-3",vheaders);
+
+}
+
+
+
+
+function runTest() {
+ table30();
+}
diff --git a/LayoutTests/dom/html/level2/html/table31-expected.txt b/LayoutTests/dom/html/level2/html/table31-expected.txt
new file mode 100644
index 0000000..b757796
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table31-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table31
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table31.html b/LayoutTests/dom/html/level2/html/table31.html
new file mode 100644
index 0000000..d56e1f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table31.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table31.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table31.js b/LayoutTests/dom/html/level2/html/table31.js
new file mode 100644
index 0000000..8bd96a3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table31.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table31";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Vertical alignment of data in cell.
+The value of attribute valign of the tablecell element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221
+*/
+function table31() {
+ var success;
+ if(checkInitialization(builder, "table31") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ table31();
+}
diff --git a/LayoutTests/dom/html/level2/html/table32-expected.txt b/LayoutTests/dom/html/level2/html/table32-expected.txt
new file mode 100644
index 0000000..860dc46
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table32-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table32
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table32.html b/LayoutTests/dom/html/level2/html/table32.html
new file mode 100644
index 0000000..c4109e3
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table32.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECELL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table32.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<TR>
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="hd1" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="170">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD ID="header-3">EMP0001</TD>
+<TD ID="header-4" ABBR="hd2" AXIS="center" ALIGN="center" BGCOLOR="#FF0000" CHAR=":" CHAROFF="1" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-3" VALIGN="middle" WIDTH="175">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table32.js b/LayoutTests/dom/html/level2/html/table32.js
new file mode 100644
index 0000000..c24cf6b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table32.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table32";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecell");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+cell width.
+The value of attribute width of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795
+*/
+function table32() {
+ var success;
+ if(checkInitialization(builder, "table32") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecell");
+ nodeList = doc.getElementsByTagName("td");
+ assertSize("Asize",4,nodeList);
+testNode = nodeList.item(1);
+ vwidth = testNode.width;
+
+ assertEquals("vwidthLink","175",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ table32();
+}
diff --git a/LayoutTests/dom/html/level2/html/table33-expected.txt b/LayoutTests/dom/html/level2/html/table33-expected.txt
new file mode 100644
index 0000000..5c796e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table33-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table33
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table33.html b/LayoutTests/dom/html/level2/html/table33.html
new file mode 100644
index 0000000..42afe19
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table33.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table33.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table33.js b/LayoutTests/dom/html/level2/html/table33.js
new file mode 100644
index 0000000..0c7ffe0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table33.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table33";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Specifies the table's position with respect to the rest of the document.
+The value of attribute align of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23180977
+*/
+function table33() {
+ var success;
+ if(checkInitialization(builder, "table33") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ table33();
+}
diff --git a/LayoutTests/dom/html/level2/html/table34-expected.txt b/LayoutTests/dom/html/level2/html/table34-expected.txt
new file mode 100644
index 0000000..26fd72a
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table34-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table34
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table34.html b/LayoutTests/dom/html/level2/html/table34.html
new file mode 100644
index 0000000..92cd217
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table34.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table34.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table34.js b/LayoutTests/dom/html/level2/html/table34.js
new file mode 100644
index 0000000..2843cf1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table34.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table34";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The width of the border around the table.
+The value of attribute border of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50969400
+*/
+function table34() {
+ var success;
+ if(checkInitialization(builder, "table34") != null) return;
+ var nodeList;
+ var testNode;
+ var vborder;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vborder = testNode.border;
+
+ assertEquals("borderLink","4",vborder);
+
+}
+
+
+
+
+function runTest() {
+ table34();
+}
diff --git a/LayoutTests/dom/html/level2/html/table35-expected.txt b/LayoutTests/dom/html/level2/html/table35-expected.txt
new file mode 100644
index 0000000..05b1eea
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table35-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table35
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table35.html b/LayoutTests/dom/html/level2/html/table35.html
new file mode 100644
index 0000000..8d5b5bd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table35.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table35.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table35.js b/LayoutTests/dom/html/level2/html/table35.js
new file mode 100644
index 0000000..70ecb58
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table35.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table35";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Cell background color.
+The value of attribute bgcolor of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83532985
+*/
+function table35() {
+ var success;
+ if(checkInitialization(builder, "table35") != null) return;
+ var nodeList;
+ var testNode;
+ var vbgcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vbgcolor = testNode.bgColor;
+
+ assertEquals("bgcolorLink","#ff0000",vbgcolor);
+
+}
+
+
+
+
+function runTest() {
+ table35();
+}
diff --git a/LayoutTests/dom/html/level2/html/table36-expected.txt b/LayoutTests/dom/html/level2/html/table36-expected.txt
new file mode 100644
index 0000000..671b4d4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table36-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table36
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table36.html b/LayoutTests/dom/html/level2/html/table36.html
new file mode 100644
index 0000000..cb90fe0
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table36.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table36.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table36.js b/LayoutTests/dom/html/level2/html/table36.js
new file mode 100644
index 0000000..2cfb59e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table36.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table36";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Specifies which external table borders to render.
+The value of attribute frame of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64808476
+*/
+function table36() {
+ var success;
+ if(checkInitialization(builder, "table36") != null) return;
+ var nodeList;
+ var testNode;
+ var vframe;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vframe = testNode.frame;
+
+ assertEquals("frameLink","border",vframe);
+
+}
+
+
+
+
+function runTest() {
+ table36();
+}
diff --git a/LayoutTests/dom/html/level2/html/table37-expected.txt b/LayoutTests/dom/html/level2/html/table37-expected.txt
new file mode 100644
index 0000000..20b110c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table37-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table37
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table37.html b/LayoutTests/dom/html/level2/html/table37.html
new file mode 100644
index 0000000..6ee702e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table37.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table37.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table37.js b/LayoutTests/dom/html/level2/html/table37.js
new file mode 100644
index 0000000..d391ea9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table37.js
@@ -0,0 +1,111 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table37";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Specifies the horizontal and vertical space between cell content and cell borders. The value of attribute cellpadding of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59162158
+*/
+function table37() {
+ var success;
+ if(checkInitialization(builder, "table37") != null) return;
+ var nodeList;
+ var testNode;
+ var vcellpadding;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vcellpadding = testNode.cellPadding;
+
+ assertEquals("cellpaddingLink","2",vcellpadding);
+
+}
+
+
+
+
+function runTest() {
+ table37();
+}
diff --git a/LayoutTests/dom/html/level2/html/table38-expected.txt b/LayoutTests/dom/html/level2/html/table38-expected.txt
new file mode 100644
index 0000000..fcb11fb
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table38-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table38
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table38.html b/LayoutTests/dom/html/level2/html/table38.html
new file mode 100644
index 0000000..5f2a6c5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table38.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table38.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table38.js b/LayoutTests/dom/html/level2/html/table38.js
new file mode 100644
index 0000000..76d019d
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table38.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table38";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Specifies the horizontal and vertical separation between cells.
+The value of attribute cellspacing of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68907883
+*/
+function table38() {
+ var success;
+ if(checkInitialization(builder, "table38") != null) return;
+ var nodeList;
+ var testNode;
+ var vcellspacing;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vcellspacing = testNode.cellSpacing;
+
+ assertEquals("cellspacingLink","2",vcellspacing);
+
+}
+
+
+
+
+function runTest() {
+ table38();
+}
diff --git a/LayoutTests/dom/html/level2/html/table39-expected.txt b/LayoutTests/dom/html/level2/html/table39-expected.txt
new file mode 100644
index 0000000..1d1190b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table39-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table39
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table39.html b/LayoutTests/dom/html/level2/html/table39.html
new file mode 100644
index 0000000..d4a0b49
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table39.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table39.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table39.js b/LayoutTests/dom/html/level2/html/table39.js
new file mode 100644
index 0000000..71254bf
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table39.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table39";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Supplementary description about the purpose or structure of a table.
+The value of attribute summary of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-44998528
+*/
+function table39() {
+ var success;
+ if(checkInitialization(builder, "table39") != null) return;
+ var nodeList;
+ var testNode;
+ var vsummary;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vsummary = testNode.summary;
+
+ assertEquals("summaryLink","HTML Control Table",vsummary);
+
+}
+
+
+
+
+function runTest() {
+ table39();
+}
diff --git a/LayoutTests/dom/html/level2/html/table40-expected.txt b/LayoutTests/dom/html/level2/html/table40-expected.txt
new file mode 100644
index 0000000..d3abc8f
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table40-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table40
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table40.html b/LayoutTests/dom/html/level2/html/table40.html
new file mode 100644
index 0000000..584d04e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table40.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table40.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table40.js b/LayoutTests/dom/html/level2/html/table40.js
new file mode 100644
index 0000000..534f6c6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table40.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table40";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Specifies which internal table borders to render.
+The value of attribute rules of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26347553
+*/
+function table40() {
+ var success;
+ if(checkInitialization(builder, "table40") != null) return;
+ var nodeList;
+ var testNode;
+ var vrules;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vrules = testNode.rules;
+
+ assertEquals("rulesLink","all",vrules);
+
+}
+
+
+
+
+function runTest() {
+ table40();
+}
diff --git a/LayoutTests/dom/html/level2/html/table41-expected.txt b/LayoutTests/dom/html/level2/html/table41-expected.txt
new file mode 100644
index 0000000..6a14b3b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table41-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table41
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table41.html b/LayoutTests/dom/html/level2/html/table41.html
new file mode 100644
index 0000000..01acd64
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table41.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table41.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table41.js b/LayoutTests/dom/html/level2/html/table41.js
new file mode 100644
index 0000000..ebe8f27
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table41.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table41";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Specifies the desired table width.
+The value of attribute width of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77447361
+*/
+function table41() {
+ var success;
+ if(checkInitialization(builder, "table41") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("table");
+ assertSize("Asize",3,nodeList);
+testNode = nodeList.item(1);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","680",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ table41();
+}
diff --git a/LayoutTests/dom/html/level2/html/table42-expected.txt b/LayoutTests/dom/html/level2/html/table42-expected.txt
new file mode 100644
index 0000000..78069ea
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table42-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table42
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table42.html b/LayoutTests/dom/html/level2/html/table42.html
new file mode 100644
index 0000000..493d53c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table42.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table42.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table42.js b/LayoutTests/dom/html/level2/html/table42.js
new file mode 100644
index 0000000..b5de1ad
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table42.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table42";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Horizontal alignment of data within cells of this row.
+The value of attribute align of the tablerow element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257
+*/
+function table42() {
+ var success;
+ if(checkInitialization(builder, "table42") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",8,nodeList);
+testNode = nodeList.item(1);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ table42();
+}
diff --git a/LayoutTests/dom/html/level2/html/table43-expected.txt b/LayoutTests/dom/html/level2/html/table43-expected.txt
new file mode 100644
index 0000000..cf4377b
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table43-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table43
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table43.html b/LayoutTests/dom/html/level2/html/table43.html
new file mode 100644
index 0000000..2b61c49
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table43.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table43.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table43.js b/LayoutTests/dom/html/level2/html/table43.js
new file mode 100644
index 0000000..18ebff5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table43.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table43";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Background color for rows.
+The value of attribute bgcolor of the tablerow element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18161327
+*/
+function table43() {
+ var success;
+ if(checkInitialization(builder, "table43") != null) return;
+ var nodeList;
+ var testNode;
+ var vbgcolor;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",8,nodeList);
+testNode = nodeList.item(1);
+ vbgcolor = testNode.bgColor;
+
+ assertEquals("bgcolorLink","#00FFFF".toLowerCase(),vbgcolor.toLowerCase());
+
+}
+
+
+
+
+function runTest() {
+ table43();
+}
diff --git a/LayoutTests/dom/html/level2/html/table44-expected.txt b/LayoutTests/dom/html/level2/html/table44-expected.txt
new file mode 100644
index 0000000..7297181
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table44-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table44
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table44.html b/LayoutTests/dom/html/level2/html/table44.html
new file mode 100644
index 0000000..9cdbfa5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table44.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLE</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table44.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+<TABLE SUMMARY="Table 3">
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+<TBODY>
+<TR>
+<TD>
+</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/LayoutTests/dom/html/level2/html/table44.js b/LayoutTests/dom/html/level2/html/table44.js
new file mode 100644
index 0000000..4c8c7f1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table44.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table44";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "table");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Vertical alignment of data within cells of this row.
+The value of attribute valign of the tablerow element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90000058
+*/
+function table44() {
+ var success;
+ if(checkInitialization(builder, "table44") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "table");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",8,nodeList);
+testNode = nodeList.item(1);
+ vvalign = testNode.vAlign;
+
+ assertEquals("valignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ table44();
+}
diff --git a/LayoutTests/dom/html/level2/html/table45-expected.txt b/LayoutTests/dom/html/level2/html/table45-expected.txt
new file mode 100644
index 0000000..1b8c7b6
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table45-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table45
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table45.html b/LayoutTests/dom/html/level2/html/table45.html
new file mode 100644
index 0000000..2ed5981
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table45.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table45.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/table45.js b/LayoutTests/dom/html/level2/html/table45.js
new file mode 100644
index 0000000..c6928ff
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table45.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table45";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Alignment character for cells in a column.
+The value of attribute ch of the tablerow element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502
+*/
+function table45() {
+ var success;
+ if(checkInitialization(builder, "table45") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(1);
+ vch = testNode.ch;
+
+ assertEquals("vchLink","*",vch);
+
+}
+
+
+
+
+function runTest() {
+ table45();
+}
diff --git a/LayoutTests/dom/html/level2/html/table46-expected.txt b/LayoutTests/dom/html/level2/html/table46-expected.txt
new file mode 100644
index 0000000..b7057e7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table46-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table46
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table46.html b/LayoutTests/dom/html/level2/html/table46.html
new file mode 100644
index 0000000..77193e1
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table46.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table46.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/table46.js b/LayoutTests/dom/html/level2/html/table46.js
new file mode 100644
index 0000000..bb17d0c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table46.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table46";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Offset of alignment character.
+The value of attribute choff of the tablerow element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461
+*/
+function table46() {
+ var success;
+ if(checkInitialization(builder, "table46") != null) return;
+ var nodeList;
+ var testNode;
+ var vchoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(1);
+ vchoff = testNode.chOff;
+
+ assertEquals("choffLink","1",vchoff);
+
+}
+
+
+
+
+function runTest() {
+ table46();
+}
diff --git a/LayoutTests/dom/html/level2/html/table47-expected.txt b/LayoutTests/dom/html/level2/html/table47-expected.txt
new file mode 100644
index 0000000..2500758
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table47-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table47
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table47.html b/LayoutTests/dom/html/level2/html/table47.html
new file mode 100644
index 0000000..706cd75
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table47.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLEROW</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table47.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE ALIGN="center" SUMMARY="Table 1">
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+</TABLE>
+<TABLE ID="table-1" ALIGN="center" BORDER="4" BGCOLOR="#ff0000" FRAME="border" CELLPADDING="2" CELLSPACING="2" SUMMARY="HTML Control Table" RULES="all" WIDTH="680">
+<CAPTION ALIGN="top">Table Caption</CAPTION>
+<THEAD ALIGN="center" VALIGN="middle">
+<TR ALIGN="center" BGCOLOR="#00FFFF" VALIGN="middle" CHAR="*" CHAROFF="1">
+<TH ID="header-1">Employee Id</TH>
+<TH ID="header-2" ABBR="maiden" AXIS="center" ALIGN="center" BGCOLOR="#00FFFF" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-1" VALIGN="middle" WIDTH="100">Employee Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+<TH>Gender</TH>
+<TH>Address</TH>
+</TR>
+</THEAD>
+<TFOOT ALIGN="center" VALIGN="middle">
+<TR>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+<TH>next page ...</TH>
+</TR>
+</TFOOT>
+<TBODY ALIGN="center" VALIGN="middle">
+<TR>
+<TD AXIS="center" ID="Table-3" ABBR="maiden2" ALIGN="center" BGCOLOR="#FF0000" COLSPAN="1" HEIGHT="50" NOWRAP="nowrap" ROWSPAN="1" SCOPE="col" HEADERS="header-2" VALIGN="middle" WIDTH="175">EMP0001</TD>
+<TD HEADERS="header-2">Margaret Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+<TD>Female</TD>
+<TD>1230 North Ave. Dallas, Texas 98551</TD>
+</TR>
+<TR>
+<TD>EMP0002</TD>
+<TD>Martha Raynolds</TD>
+<TD>Secretary</TD>
+<TD>35,000</TD>
+<TD>Female</TD>
+<TD>1900 Dallas Road Dallas, Texas 98554</TD>
+</TR>
+</TBODY>
+</TABLE>
+</BODY>
+</HTML>
+
diff --git a/LayoutTests/dom/html/level2/html/table47.js b/LayoutTests/dom/html/level2/html/table47.js
new file mode 100644
index 0000000..ff103ab
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table47.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table47";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablerow");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+The index of this row, relative to the entire table.
+The value of attribute rowIndex of the table element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67347567
+*/
+function table47() {
+ var success;
+ if(checkInitialization(builder, "table47") != null) return;
+ var nodeList;
+ var testNode;
+ var vrindex;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablerow");
+ nodeList = doc.getElementsByTagName("tr");
+ assertSize("Asize",5,nodeList);
+testNode = nodeList.item(4);
+ vrindex = testNode.rowIndex;
+
+ assertEquals("rowIndexLink",2,vrindex);
+
+}
+
+
+
+
+function runTest() {
+ table47();
+}
diff --git a/LayoutTests/dom/html/level2/html/table48-expected.txt b/LayoutTests/dom/html/level2/html/table48-expected.txt
new file mode 100644
index 0000000..7a20936
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table48-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table48
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table48.html b/LayoutTests/dom/html/level2/html/table48.html
new file mode 100644
index 0000000..255dbfd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table48.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table48.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/table48.js b/LayoutTests/dom/html/level2/html/table48.js
new file mode 100644
index 0000000..c04e7f9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table48.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table48";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Horizontal alignment of cell data in column.
+The value of attribute align of the tablecol element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257
+*/
+function table48() {
+ var success;
+ if(checkInitialization(builder, "table48") != null) return;
+ var nodeList;
+ var testNode;
+ var valign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ valign = testNode.align;
+
+ assertEquals("alignLink","center",valign);
+
+}
+
+
+
+
+function runTest() {
+ table48();
+}
diff --git a/LayoutTests/dom/html/level2/html/table49-expected.txt b/LayoutTests/dom/html/level2/html/table49-expected.txt
new file mode 100644
index 0000000..2fb9cd9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table49-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table49
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table49.html b/LayoutTests/dom/html/level2/html/table49.html
new file mode 100644
index 0000000..624c2a8
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table49.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table49.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/table49.js b/LayoutTests/dom/html/level2/html/table49.js
new file mode 100644
index 0000000..3bbaedd
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table49.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table49";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Alignment character for cells in a column.
+The value of attribute ch of the tablecol element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502
+*/
+function table49() {
+ var success;
+ if(checkInitialization(builder, "table49") != null) return;
+ var nodeList;
+ var testNode;
+ var vch;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vch = testNode.ch;
+
+ assertEquals("chLink","*",vch);
+
+}
+
+
+
+
+function runTest() {
+ table49();
+}
diff --git a/LayoutTests/dom/html/level2/html/table50-expected.txt b/LayoutTests/dom/html/level2/html/table50-expected.txt
new file mode 100644
index 0000000..9af41b4
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table50-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table50
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table50.html b/LayoutTests/dom/html/level2/html/table50.html
new file mode 100644
index 0000000..e38f384
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table50.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table50.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/table50.js b/LayoutTests/dom/html/level2/html/table50.js
new file mode 100644
index 0000000..b8778aa
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table50.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table50";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Offset of alignment character.
+The value of attribute choff of the tablecol element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461
+*/
+function table50() {
+ var success;
+ if(checkInitialization(builder, "table50") != null) return;
+ var nodeList;
+ var testNode;
+ var vchoff;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vchoff = testNode.chOff;
+
+ assertEquals("chOffLink","20",vchoff);
+
+}
+
+
+
+
+function runTest() {
+ table50();
+}
diff --git a/LayoutTests/dom/html/level2/html/table51-expected.txt b/LayoutTests/dom/html/level2/html/table51-expected.txt
new file mode 100644
index 0000000..545caa2
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table51-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table51
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table51.html b/LayoutTests/dom/html/level2/html/table51.html
new file mode 100644
index 0000000..b6b58a7
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table51.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table51.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/table51.js b/LayoutTests/dom/html/level2/html/table51.js
new file mode 100644
index 0000000..9ee5b48
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table51.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table51";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Indicates the number of columns in a group or affected by a grouping.
+The value of attribute span of the tablecol element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335
+*/
+function table51() {
+ var success;
+ if(checkInitialization(builder, "table51") != null) return;
+ var nodeList;
+ var testNode;
+ var vspan;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vspan = testNode.span;
+
+ assertEquals("spanLink",1,vspan);
+
+}
+
+
+
+
+function runTest() {
+ table51();
+}
diff --git a/LayoutTests/dom/html/level2/html/table52-expected.txt b/LayoutTests/dom/html/level2/html/table52-expected.txt
new file mode 100644
index 0000000..331d8b5
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table52-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table52
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table52.html b/LayoutTests/dom/html/level2/html/table52.html
new file mode 100644
index 0000000..aaf726c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table52.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table52.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/table52.js b/LayoutTests/dom/html/level2/html/table52.js
new file mode 100644
index 0000000..5776d13
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table52.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table52";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Vertical alignment of cell data in column.
+The value of attribute valign of the tablecol element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710
+*/
+function table52() {
+ var success;
+ if(checkInitialization(builder, "table52") != null) return;
+ var nodeList;
+ var testNode;
+ var vvalign;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vvalign = testNode.vAlign;
+
+ assertEquals("vAlignLink","middle",vvalign);
+
+}
+
+
+
+
+function runTest() {
+ table52();
+}
diff --git a/LayoutTests/dom/html/level2/html/table53-expected.txt b/LayoutTests/dom/html/level2/html/table53-expected.txt
new file mode 100644
index 0000000..6953cda
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table53-expected.txt
@@ -0,0 +1,2 @@
+Test: http://www.w3.org/2001/DOM-Test-Suite/level2/html/table53
+Status: Success
diff --git a/LayoutTests/dom/html/level2/html/table53.html b/LayoutTests/dom/html/level2/html/table53.html
new file mode 100644
index 0000000..5f18af9
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table53.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - TABLECOL</TITLE>
+<script type='text/javascript' src='selfhtml.js'></script><script charset='UTF-8' type='text/javascript' src='table53.js'></script><script type='text/javascript'>function loadComplete() { startTest(); }</script></HEAD>
+<BODY onload="loadComplete()">
+<TABLE SUMMARY="Table Summary">
+<COLGROUP VALIGN="middle" SPAN="2" ALIGN="center" WIDTH="20" CHAR="$" CHAROFF="15">
+<COL VALIGN="middle" SPAN="1" ALIGN="center" WIDTH="20" CHAR="*" CHAROFF="20">
+</COLGROUP>
+<TR>
+<TH>Id</TH>
+<TH>Name</TH>
+<TH>Position</TH>
+<TH>Salary</TH>
+</TR>
+<TR>
+<TD>EMP0001</TD>
+<TD>Martin</TD>
+<TD>Accountant</TD>
+<TD>56,000</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
+
+
+
+
+
+
+
+
+
diff --git a/LayoutTests/dom/html/level2/html/table53.js b/LayoutTests/dom/html/level2/html/table53.js
new file mode 100644
index 0000000..3a4069c
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/table53.js
@@ -0,0 +1,112 @@
+
+/*
+Copyright © 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, European Research Consortium
+for Informatics and Mathematics, Keio University). All
+Rights Reserved. This work is distributed under the W3C® Software License [1] in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
+*/
+
+
+
+ /**
+ * Gets URI that identifies the test.
+ * @return uri identifier of test
+ */
+function getTargetURI() {
+ return "http://www.w3.org/2001/DOM-Test-Suite/level2/html/table53";
+ }
+
+var docsLoaded = -1000000;
+var builder = null;
+
+//
+// This function is called by the testing framework before
+// running the test suite.
+//
+// If there are no configuration exceptions, asynchronous
+// document loading is started. Otherwise, the status
+// is set to complete and the exception is immediately
+// raised when entering the body of the test.
+//
+function setUpPage() {
+ setUpPageStatus = 'running';
+ try {
+ //
+ // creates test document builder, may throw exception
+ //
+ builder = createConfiguredBuilder();
+
+ docsLoaded = 0;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ docsLoaded += preload(docRef, "doc", "tablecol");
+
+ if (docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+ } catch(ex) {
+ catchInitializationError(builder, ex);
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+
+//
+// This method is called on the completion of
+// each asychronous load started in setUpTests.
+//
+// When every synchronous loaded document has completed,
+// the page status is changed which allows the
+// body of the test to be executed.
+function loadComplete() {
+ if (++docsLoaded == 1) {
+ setUpPageStatus = 'complete';
+ }
+}
+
+
+/**
+*
+Default column width.
+The value of attribute width of the tablecol element is read and checked against the expected value.
+
+* @author Netscape
+* @author Sivakiran Tummala
+* @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799
+*/
+function table53() {
+ var success;
+ if(checkInitialization(builder, "table53") != null) return;
+ var nodeList;
+ var testNode;
+ var vwidth;
+ var doc;
+
+ var docRef = null;
+ if (typeof(this.doc) != 'undefined') {
+ docRef = this.doc;
+ }
+ doc = load(docRef, "doc", "tablecol");
+ nodeList = doc.getElementsByTagName("col");
+ assertSize("Asize",1,nodeList);
+testNode = nodeList.item(0);
+ vwidth = testNode.width;
+
+ assertEquals("widthLink","20",vwidth);
+
+}
+
+
+
+
+function runTest() {
+ table53();
+}
diff --git a/LayoutTests/dom/html/level2/html/w3c_main.png b/LayoutTests/dom/html/level2/html/w3c_main.png
new file mode 100644
index 0000000..139292e
--- /dev/null
+++ b/LayoutTests/dom/html/level2/html/w3c_main.png
Binary files differ