blob: 03b68cd1161f68a2f74c8a408a8b1d49da20e9dd [file] [log] [blame]
description('This test that setting HTMLSelectElement.length respects optgroups.');
var wrapper = document.createElement('div');
document.body.appendChild(wrapper);
wrapper.innerHTML = '<select id="theSelect">'+
'<optgroup label="foo" id="theOptGroup">'+
'<option id="optionInGroup"></option>'+
'</optgroup>'+
'</select>';
var sel = document.getElementById('theSelect');
shouldBe('sel.length', '1');
var og = document.getElementById('theOptGroup');
sel.length = 2;
shouldBe('sel.length', '2');
shouldBe('og.childElementCount', '1');
sel.length = 1;
shouldBe('sel.length', '1');
shouldBe('og.childElementCount', '1');
sel.insertBefore(document.createElement('option'), og);
sel.length = 1;
shouldBe('sel.length', '1');
shouldBe('og.childElementCount', '0');