OLD | NEW |
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> | 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <script src="../../resources/js-test.js"></script> | 4 <script src="../../resources/js-test.js"></script> |
5 </head> | 5 </head> |
6 <body> | 6 <body> |
7 <p id="description"></p> | 7 <p id="description"></p> |
8 <div id="console"></div> | 8 <div id="console"></div> |
9 <script> | 9 <script> |
10 description("This test examines the order of form associated elements which are
classified as 'listed'."); | 10 description("This test examines the order of form associated elements which are
classified as 'listed'."); |
(...skipping 10 matching lines...) Expand all Loading... |
21 if (owner.elements[i] != victims[i]) | 21 if (owner.elements[i] != victims[i]) |
22 return 'element mismatch at index ' + i; | 22 return 'element mismatch at index ' + i; |
23 return 'OK'; | 23 return 'OK'; |
24 } | 24 } |
25 | 25 |
26 debug('- Checks the order of form associated elements.'); | 26 debug('- Checks the order of form associated elements.'); |
27 container.innerHTML = '<form id=owner>' + | 27 container.innerHTML = '<form id=owner>' + |
28 '<button name=victim></button>' + | 28 '<button name=victim></button>' + |
29 '<fieldset name=victim>Test</fieldset>' + | 29 '<fieldset name=victim>Test</fieldset>' + |
30 '<input name=victim/>' + | 30 '<input name=victim/>' + |
31 '<keygen name=victim></keygen>' + | |
32 '<label name=victim></label>' + | 31 '<label name=victim></label>' + |
33 '<meter name=victim></meter>' + | 32 '<meter name=victim></meter>' + |
34 '<object name=victim></object>' + | 33 '<object name=victim></object>' + |
35 '<output name=victim></output>' + | 34 '<output name=victim></output>' + |
36 '<progress name=victim></progress>' + | 35 '<progress name=victim></progress>' + |
37 '<select name=victim></select>' + | 36 '<select name=victim></select>' + |
38 '<textarea name=victim></textarea>'+ | 37 '<textarea name=victim></textarea>'+ |
39 '</form>'; | 38 '</form>'; |
40 owner = document.getElementById('owner'); | 39 owner = document.getElementById('owner'); |
41 var button = document.getElementsByTagName('button')[0]; | 40 var button = document.getElementsByTagName('button')[0]; |
42 var fieldset = document.getElementsByTagName('fieldset')[0]; | 41 var fieldset = document.getElementsByTagName('fieldset')[0]; |
43 var input = document.getElementsByTagName('input')[0]; | 42 var input = document.getElementsByTagName('input')[0]; |
44 var keygen = document.getElementsByTagName('keygen')[0]; | |
45 var label = document.getElementsByTagName('label')[0]; | 43 var label = document.getElementsByTagName('label')[0]; |
46 var meter = document.getElementsByTagName('meter')[0]; | 44 var meter = document.getElementsByTagName('meter')[0]; |
47 var object = document.getElementsByTagName('object')[0]; | 45 var object = document.getElementsByTagName('object')[0]; |
48 var output = document.getElementsByTagName('output')[0]; | 46 var output = document.getElementsByTagName('output')[0]; |
49 var progress = document.getElementsByTagName('progress')[0]; | 47 var progress = document.getElementsByTagName('progress')[0]; |
50 var select = document.getElementsByTagName('select')[0]; | 48 var select = document.getElementsByTagName('select')[0]; |
51 var textarea = document.getElementsByTagName('textarea')[0]; | 49 var textarea = document.getElementsByTagName('textarea')[0]; |
52 shouldBe('checkOrder([button, fieldset, input, keygen, object, output, select, t
extarea])', '"OK"'); | 50 shouldBe('checkOrder([button, fieldset, input, object, output, select, textarea]
)', '"OK"'); |
53 | 51 |
54 debug(''); | 52 debug(''); |
55 debug('- Checks the order after some elements removed/inserted.'); | 53 debug('- Checks the order after some elements removed/inserted.'); |
56 owner.removeChild(object); | 54 owner.removeChild(object); |
57 shouldBe('checkOrder([button, fieldset, input, keygen, output, select, textarea]
)', '"OK"'); | 55 shouldBe('checkOrder([button, fieldset, input, output, select, textarea])', '"OK
"'); |
58 owner.removeChild(button); | 56 owner.removeChild(button); |
59 shouldBe('checkOrder([fieldset, input, keygen, output, select, textarea])', '"OK
"'); | 57 shouldBe('checkOrder([fieldset, input, output, select, textarea])', '"OK"'); |
60 owner.insertBefore(object, fieldset); | 58 owner.insertBefore(object, fieldset); |
61 shouldBe('checkOrder([object, fieldset, input, keygen, output, select, textarea]
)', '"OK"'); | 59 shouldBe('checkOrder([object, fieldset, input, output, select, textarea])', '"OK
"'); |
62 owner.appendChild(button); | 60 owner.appendChild(button); |
63 shouldBe('checkOrder([object, fieldset, input, keygen, output, select, textarea,
button])', '"OK"'); | 61 shouldBe('checkOrder([object, fieldset, input, output, select, textarea, button]
)', '"OK"'); |
64 | 62 |
65 debug(''); | 63 debug(''); |
66 debug('- Checks the order of form associated elements with form attribute.'); | 64 debug('- Checks the order of form associated elements with form attribute.'); |
67 container.innerHTML = '<button name=victim form=owner></button>' + | 65 container.innerHTML = '<button name=victim form=owner></button>' + |
68 '<fieldset name=victim form=owner>Test</fieldset>' + | 66 '<fieldset name=victim form=owner>Test</fieldset>' + |
69 '<input name=victim form=owner />' + | 67 '<input name=victim form=owner />' + |
70 '<keygen name=victim form=owner></keygen>' + | |
71 '<form id=owner>' + | 68 '<form id=owner>' + |
72 '<label name=victim></label>' + | 69 '<label name=victim></label>' + |
73 '<meter name=victim></meter>' + | 70 '<meter name=victim></meter>' + |
74 '<object name=victim></object>' + | 71 '<object name=victim></object>' + |
75 '</form>' + | 72 '</form>' + |
76 '<output name=victim form=owner></output>' + | 73 '<output name=victim form=owner></output>' + |
77 '<progress name=victim form=owner></progress>' + | 74 '<progress name=victim form=owner></progress>' + |
78 '<select name=victim form=owner></select>' + | 75 '<select name=victim form=owner></select>' + |
79 '<textarea name=victim form=owner></textarea>'; | 76 '<textarea name=victim form=owner></textarea>'; |
80 owner = document.getElementById('owner'); | 77 owner = document.getElementById('owner'); |
81 button = document.getElementsByTagName('button')[0]; | 78 button = document.getElementsByTagName('button')[0]; |
82 fieldset = document.getElementsByTagName('fieldset')[0]; | 79 fieldset = document.getElementsByTagName('fieldset')[0]; |
83 input = document.getElementsByTagName('input')[0]; | 80 input = document.getElementsByTagName('input')[0]; |
84 keygen = document.getElementsByTagName('keygen')[0]; | |
85 label = document.getElementsByTagName('label')[0]; | 81 label = document.getElementsByTagName('label')[0]; |
86 meter = document.getElementsByTagName('meter')[0]; | 82 meter = document.getElementsByTagName('meter')[0]; |
87 object = document.getElementsByTagName('object')[0]; | 83 object = document.getElementsByTagName('object')[0]; |
88 output = document.getElementsByTagName('output')[0]; | 84 output = document.getElementsByTagName('output')[0]; |
89 progress = document.getElementsByTagName('progress')[0]; | 85 progress = document.getElementsByTagName('progress')[0]; |
90 select = document.getElementsByTagName('select')[0]; | 86 select = document.getElementsByTagName('select')[0]; |
91 textarea = document.getElementsByTagName('textarea')[0]; | 87 textarea = document.getElementsByTagName('textarea')[0]; |
92 shouldBe('checkOrder([button, fieldset, input, keygen, object, output, select, t
extarea])', '"OK"'); | 88 shouldBe('checkOrder([button, fieldset, input, object, output, select, textarea]
)', '"OK"'); |
93 | 89 |
94 debug(''); | 90 debug(''); |
95 debug('- Checks the order after some elements removed/inserted with form attribu
te.'); | 91 debug('- Checks the order after some elements removed/inserted with form attribu
te.'); |
96 owner.removeChild(object); | 92 owner.removeChild(object); |
97 shouldBe('checkOrder([button, fieldset, input, keygen, output, select, textarea]
)', '"OK"'); | 93 shouldBe('checkOrder([button, fieldset, input, output, select, textarea])', '"OK
"'); |
98 container.removeChild(button); | 94 container.removeChild(button); |
99 shouldBe('checkOrder([fieldset, input, keygen, output, select, textarea])', '"OK
"'); | 95 shouldBe('checkOrder([fieldset, input, output, select, textarea])', '"OK"'); |
100 container.removeChild(textarea); | 96 container.removeChild(textarea); |
101 shouldBe('checkOrder([fieldset, input, keygen, output, select])', '"OK"'); | 97 shouldBe('checkOrder([fieldset, input, output, select])', '"OK"'); |
102 owner.appendChild(object); | 98 owner.appendChild(object); |
103 shouldBe('checkOrder([fieldset, input, keygen, object, output, select])', '"OK"'
); | 99 shouldBe('checkOrder([fieldset, input, object, output, select])', '"OK"'); |
104 container.insertBefore(textarea, fieldset); | 100 container.insertBefore(textarea, fieldset); |
105 shouldBe('checkOrder([textarea, fieldset, input, keygen, object, output, select]
)', '"OK"'); | 101 shouldBe('checkOrder([textarea, fieldset, input, object, output, select])', '"OK
"'); |
106 container.appendChild(button); | 102 container.appendChild(button); |
107 shouldBe('checkOrder([textarea, fieldset, input, keygen, object, output, select,
button])', '"OK"'); | 103 shouldBe('checkOrder([textarea, fieldset, input, object, output, select, button]
)', '"OK"'); |
108 </script> | 104 </script> |
109 </body> | 105 </body> |
110 </html> | 106 </html> |
OLD | NEW |