Bug 960999 - Fix for random test failure in browser_form_selects.js. r=mbrubeck, a=test-only
--- a/browser/metro/base/tests/mochitest/browser_form_selects.js
+++ b/browser/metro/base/tests/mochitest/browser_form_selects.js
@@ -30,17 +30,19 @@ gTests.push({
sendNativeTap(select);
yield promise;
// tap every option
for (let node of SelectHelperUI._listbox.childNodes) {
sendNativeTap(node);
}
- yield waitForMs(100);
+ yield waitForCondition2(function () {
+ return Browser.selectedTab.browser.contentWindow.document.getElementById("opt9").selected;
+ }, "waiting for last option to select");
// check the menu state
for (let node of SelectHelperUI._listbox.childNodes) {
ok(node.selected, "option is selected");
}
// check the underlying form state
for (let index = 1; index < 10; index++) {
@@ -48,17 +50,19 @@ gTests.push({
ok(option.selected, "opt" + index + " form option selected");
}
// tap every option again
for (let node of SelectHelperUI._listbox.childNodes) {
sendNativeTap(node);
}
- yield waitForMs(100);
+ yield waitForCondition2(function () {
+ return !Browser.selectedTab.browser.contentWindow.document.getElementById("opt9").selected;
+ }, "waiting for last option to deselect");
// check the menu state
for (let node of SelectHelperUI._listbox.childNodes) {
ok(!node.selected, "option is not selected");
}
// check the underlying form state
for (let index = 1; index < 10; index++) {