Bug 1258896 - Make the scroll position check in test_mousecapture a little fuzzier to allow for scroll event coalescing. r=Gijs

MozReview-Commit-ID: LdmaJHeb7rl

--HG--
extra : rebase_source : 3ee2cb3f3c1b9c2d9a65222a6778f6767c86d46d
This commit is contained in:
Kartikaya Gupta 2016-05-05 12:28:09 -04:00
Родитель e440b12173
Коммит af50ca223e
1 изменённых файлов: 10 добавлений и 4 удалений

Просмотреть файл

@ -76,10 +76,16 @@ function selectionScrollCheck()
var selectedText = otherWindow.getSelection().toString().replace(/\r/g, "");
is(selectedText, "One\n\nTwo", "text is selected");
// should have scrolled 20 pixels from the mousemove above and six extra
// times from the selection scroll timer for a total of 140
var oldScrollY = otherWindow.scrollY;
is(otherWindow.scrollY, 140, "selection scroll position after timer");
// should have scrolled 20 pixels from the mousemove above and at least 6
// extra 20-pixel increments from the selection scroll timer. "At least 6"
// because we waited for 6 scroll events but multiple scrolls could get
// coalesced into a single scroll event. Therefore we allow 6-15 scrolls,
// which corresponds to a scroll position of 140 to 320. The 15 is chosen
// arbitrarily and can be adjusted.
var scrollY = otherWindow.scrollY;
ok(scrollY >= 140, "selection scroll position after timer is at least 140");
ok(scrollY <= 320, "selection scroll position after timer is not more than 320");
ok((scrollY % 20) == 0, "selection scroll position after timer is multiple of 20");
synthesizeMouse(element, 4, otherWindow.innerHeight + 25, { type: "mouseup" }, otherWindow);
disableNonTestMouseEvents(false);