From c070c7ad30daac0ace04250a47dc17cb03d7a39d Mon Sep 17 00:00:00 2001 From: Dongie Agnir Date: Fri, 23 Oct 2015 13:16:42 -1000 Subject: [PATCH] Update and correct tests. --- .../select-ask-for-reset.html | 30 ++++++++++++++----- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html b/tests/wpt/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html index fd7683f8cbe..1ed8bea1069 100644 --- a/tests/wpt/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html +++ b/tests/wpt/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html @@ -25,11 +25,13 @@ test(function() { var select = makeSelect(3); select.children[1].selected = true; + // insert selected option, should remain selected var opt4 = document.createElement("option"); opt4.selected = true; - select.appendChild(opt4); // 2 options selected - unselectedExcept(select, 3); // last should remain selected + select.appendChild(opt4); + unselectedExcept(select, 3); + // insert unselected, should 3 should remain selected var opt5 = document.createElement("option"); select.appendChild(opt5); @@ -39,14 +41,28 @@ test(function() { test(function() { var select = makeSelect(3); - select.children[2].selected = true; - select.children[2].selected = false; // none selected + var options = select.children; + + // select options from first to last + for (var i = 0; i < options.length; ++i) { + options[i].selected = true; + unselectedExcept(select, i); + } + + // select options from last to first + for (var i = options.length - 1; i >= 0; --i) { + options[i].selected = true; + unselectedExcept(select, i); + } + + options[2].selected = true; + options[2].selected = false; // none selected unselectedExcept(select, 0); // disable first so option at index 1 is first eligible - select.children[0].disabled = true; - select.children[2].selected = true; - select.children[2].selected = false; // none selected + options[0].disabled = true; + options[2].selected = true; + options[2].selected = false; // none selected unselectedExcept(select, 1); }, "change selectedness of option, non multiple.");