| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <meta charset="utf-8"> | 4 <meta charset="utf-8"> |
| 5 <script src="../../../resources/js-test.js"></script> | 5 <script src="../../../resources/js-test.js"></script> |
| 6 </head> | 6 </head> |
| 7 <body> | 7 <body> |
| 8 <script> | 8 <script> |
| 9 description("This test the elements attibute of HTMLFieldSet element."); | 9 description("This test the elements attibute of HTMLFieldSet element."); |
| 10 | 10 |
| (...skipping 13 matching lines...) Expand all Loading... |
| 24 '<input id=inputnumber type=number>' + | 24 '<input id=inputnumber type=number>' + |
| 25 '<input id=inputrange type=range>' + | 25 '<input id=inputrange type=range>' + |
| 26 '<input id=inputcolor type=color>' + | 26 '<input id=inputcolor type=color>' + |
| 27 '<input id=inputcheckbox type=checkbox>' + | 27 '<input id=inputcheckbox type=checkbox>' + |
| 28 '<input id=inputradio type=radio>' + | 28 '<input id=inputradio type=radio>' + |
| 29 '<input id=inputfile type=file>' + | 29 '<input id=inputfile type=file>' + |
| 30 '<input id=inputsubmit type=submit>' + | 30 '<input id=inputsubmit type=submit>' + |
| 31 '<input id=inputimage type=image>' + | 31 '<input id=inputimage type=image>' + |
| 32 '<input id=inputreset type=reset>' + | 32 '<input id=inputreset type=reset>' + |
| 33 '<input id=inputbutton type=button>' + | 33 '<input id=inputbutton type=button>' + |
| 34 '<keygen id=keygen1></keygen>' + | |
| 35 '<label id=label1></label>' + | 34 '<label id=label1></label>' + |
| 36 '<meter id=meter1></meter>' + | 35 '<meter id=meter1></meter>' + |
| 37 '<object id=object1></object>' + | 36 '<object id=object1></object>' + |
| 38 '<output id=output1></output>' + | 37 '<output id=output1></output>' + |
| 39 '<progress id=progress1></progress>' + | 38 '<progress id=progress1></progress>' + |
| 40 '<select id=select1>' + | 39 '<select id=select1>' + |
| 41 ' <optgroup id=optgroup1>group1</optgroup>' + | 40 ' <optgroup id=optgroup1>group1</optgroup>' + |
| 42 ' <option id=option1>option1</option>' + | 41 ' <option id=option1>option1</option>' + |
| 43 '</select>' + | 42 '</select>' + |
| 44 '<textarea id=textarea1></textarea>' + | 43 '<textarea id=textarea1></textarea>' + |
| 45 '</fieldset> </form>'; | 44 '</fieldset> </form>'; |
| 46 | 45 |
| 47 var owner = document.getElementById('fs'); | 46 var owner = document.getElementById('fs'); |
| 48 | 47 |
| 49 shouldBe('owner.elements.length', '24'); | 48 shouldBe('owner.elements.length', '23'); |
| 50 shouldBe('owner.elements[0].id', "'button1'"); | 49 shouldBe('owner.elements[0].id', "'button1'"); |
| 51 shouldBe('owner.elements[1].id', "'fieldset1'"); | 50 shouldBe('owner.elements[1].id', "'fieldset1'"); |
| 52 shouldBe('owner.elements[2].id', "'inputhidden'"); | 51 shouldBe('owner.elements[2].id', "'inputhidden'"); |
| 53 shouldBe('owner.elements[3].id', "'inputtext'"); | 52 shouldBe('owner.elements[3].id', "'inputtext'"); |
| 54 shouldBe('owner.elements[4].id', "'inputsearch'"); | 53 shouldBe('owner.elements[4].id', "'inputsearch'"); |
| 55 shouldBe('owner.elements[5].id', "'inputurl'"); | 54 shouldBe('owner.elements[5].id', "'inputurl'"); |
| 56 shouldBe('owner.elements[6].id', "'inputemail'"); | 55 shouldBe('owner.elements[6].id', "'inputemail'"); |
| 57 shouldBe('owner.elements[7].id', "'inputpassword'"); | 56 shouldBe('owner.elements[7].id', "'inputpassword'"); |
| 58 shouldBe('owner.elements[8].id', "'inputdate'"); | 57 shouldBe('owner.elements[8].id', "'inputdate'"); |
| 59 shouldBe('owner.elements[9].id', "'inputnumber'"); | 58 shouldBe('owner.elements[9].id', "'inputnumber'"); |
| 60 shouldBe('owner.elements[10].id', "'inputrange'"); | 59 shouldBe('owner.elements[10].id', "'inputrange'"); |
| 61 shouldBe('owner.elements[11].id', "'inputcolor'"); | 60 shouldBe('owner.elements[11].id', "'inputcolor'"); |
| 62 shouldBe('owner.elements[12].id', "'inputcheckbox'"); | 61 shouldBe('owner.elements[12].id', "'inputcheckbox'"); |
| 63 shouldBe('owner.elements[13].id', "'inputradio'"); | 62 shouldBe('owner.elements[13].id', "'inputradio'"); |
| 64 shouldBe('owner.elements[14].id', "'inputfile'"); | 63 shouldBe('owner.elements[14].id', "'inputfile'"); |
| 65 shouldBe('owner.elements[15].id', "'inputsubmit'"); | 64 shouldBe('owner.elements[15].id', "'inputsubmit'"); |
| 66 shouldBe('owner.elements[16].id', "'inputimage'"); | 65 shouldBe('owner.elements[16].id', "'inputimage'"); |
| 67 shouldBe('owner.elements[17].id', "'inputreset'"); | 66 shouldBe('owner.elements[17].id', "'inputreset'"); |
| 68 shouldBe('owner.elements[18].id', "'inputbutton'"); | 67 shouldBe('owner.elements[18].id', "'inputbutton'"); |
| 69 shouldBe('owner.elements[19].id', "'keygen1'"); | 68 shouldBe('owner.elements[19].id', "'object1'"); |
| 70 shouldBe('owner.elements[20].id', "'object1'"); | 69 shouldBe('owner.elements[20].id', "'output1'"); |
| 71 shouldBe('owner.elements[21].id', "'output1'"); | 70 shouldBe('owner.elements[21].id', "'select1'"); |
| 72 shouldBe('owner.elements[22].id', "'select1'"); | 71 shouldBe('owner.elements[22].id', "'textarea1'"); |
| 73 shouldBe('owner.elements[23].id', "'textarea1'"); | |
| 74 | 72 |
| 75 var newElement = document.createElement("input"); | 73 var newElement = document.createElement("input"); |
| 76 newElement.setAttribute("type", "text"); | 74 newElement.setAttribute("type", "text"); |
| 77 newElement.setAttribute("value", "new element"); | 75 newElement.setAttribute("value", "new element"); |
| 78 newElement.setAttribute("id", "inputcommon"); | 76 newElement.setAttribute("id", "inputcommon"); |
| 79 | 77 |
| 80 debug(""); | 78 debug(""); |
| 81 debug("Check elements array is updated after adding a new element"); | 79 debug("Check elements array is updated after adding a new element"); |
| 82 shouldBe('owner.appendChild(newElement); owner.elements.length', '25'); | 80 shouldBe('owner.appendChild(newElement); owner.elements.length', '24'); |
| 83 | 81 |
| 84 debug(""); | 82 debug(""); |
| 85 debug("Check elements array is updated after remove an element"); | 83 debug("Check elements array is updated after remove an element"); |
| 86 shouldBe('owner.removeChild(newElement); owner.elements.length', '24'); | 84 shouldBe('owner.removeChild(newElement); owner.elements.length', '23'); |
| 87 | 85 |
| 88 debug(""); | 86 debug(""); |
| 89 debug("Check owner.elements is not updated by changing input type to image"); | 87 debug("Check owner.elements is not updated by changing input type to image"); |
| 90 shouldBe('document.getElementById("inputfile").type="image"; owner.elements.leng
th', '24'); | 88 shouldBe('document.getElementById("inputfile").type="image"; owner.elements.leng
th', '23'); |
| 91 | 89 |
| 92 debug(""); | 90 debug(""); |
| 93 debug("Check owner.elements is updated properly after removing from parent"); | 91 debug("Check owner.elements is updated properly after removing from parent"); |
| 94 owner.parentNode.removeChild(owner); | 92 owner.parentNode.removeChild(owner); |
| 95 var form = document.getElementById("formElement"); | 93 var form = document.getElementById("formElement"); |
| 96 shouldBe('form.appendChild(newElement); form.elements.length', '1'); | 94 shouldBe('form.appendChild(newElement); form.elements.length', '1'); |
| 97 shouldBe('form.removeChild(newElement); form.elements.length', '0'); | 95 shouldBe('form.removeChild(newElement); form.elements.length', '0'); |
| 98 shouldBe('owner.elements.length', '24'); | 96 shouldBe('owner.elements.length', '23'); |
| 99 shouldBe('owner.appendChild(newElement); owner.elements.length', '25'); | 97 shouldBe('owner.appendChild(newElement); owner.elements.length', '24'); |
| 100 shouldBe('owner.removeChild(newElement); owner.elements.length', '24'); | 98 shouldBe('owner.removeChild(newElement); owner.elements.length', '23'); |
| 101 | 99 |
| 102 container.parentNode.removeChild(container); | 100 container.parentNode.removeChild(container); |
| 103 </script> | 101 </script> |
| 104 </body> | 102 </body> |
| 105 </html> | 103 </html> |
| OLD | NEW |