This test the elements attibute of HTMLFieldSet element.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


PASS owner.elements.length is 23
PASS owner.elements[0].id is 'button1'
PASS owner.elements[1].id is 'fieldset1'
PASS owner.elements[2].id is 'inputhidden'
PASS owner.elements[3].id is 'inputtext'
PASS owner.elements[4].id is 'inputsearch'
PASS owner.elements[5].id is 'inputurl'
PASS owner.elements[6].id is 'inputemail'
PASS owner.elements[7].id is 'inputpassword'
PASS owner.elements[8].id is 'inputdate'
PASS owner.elements[9].id is 'inputnumber'
PASS owner.elements[10].id is 'inputrange'
PASS owner.elements[11].id is 'inputcolor'
PASS owner.elements[12].id is 'inputcheckbox'
PASS owner.elements[13].id is 'inputradio'
PASS owner.elements[14].id is 'inputfile'
PASS owner.elements[15].id is 'inputsubmit'
PASS owner.elements[16].id is 'inputimage'
PASS owner.elements[17].id is 'inputreset'
PASS owner.elements[18].id is 'inputbutton'
PASS owner.elements[19].id is 'object1'
PASS owner.elements[20].id is 'output1'
PASS owner.elements[21].id is 'select1'
PASS owner.elements[22].id is 'textarea1'

Check elements array is updated after adding a new element
PASS owner.appendChild(newElement); owner.elements.length is 24

Check elements array is updated after remove an element
PASS owner.removeChild(newElement); owner.elements.length is 23

Check owner.elements is updated properly
PASS document.getElementById("inputfile").type="image"; owner.elements.length is 23

Check owner.elements is updated properly after removing from parent
PASS form.appendChild(newElement); form.elements.length is 1
PASS form.removeChild(newElement); form.elements.length is 0
PASS owner.elements.length is 23
PASS owner.appendChild(newElement); owner.elements.length is 24
PASS owner.removeChild(newElement); owner.elements.length is 23
PASS successfullyParsed is true

TEST COMPLETE

