diff options
Diffstat (limited to 'dom/tests/mochitest/general/test_resizeby.html')
-rw-r--r-- | dom/tests/mochitest/general/test_resizeby.html | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/dom/tests/mochitest/general/test_resizeby.html b/dom/tests/mochitest/general/test_resizeby.html new file mode 100644 index 0000000000..4826e538a0 --- /dev/null +++ b/dom/tests/mochitest/general/test_resizeby.html @@ -0,0 +1,64 @@ +<!DOCTYPE HTML> +<html> +<head> + <title>Test for Bug 1369627</title> + <script src="/tests/SimpleTest/SimpleTest.js"></script> + <script src="/tests/SimpleTest/EventUtils.js"></script> + + + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> +</head> +<body> +<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1369627">Mozilla Bug 1369627</a> +<p id="display"></p> +<div id="content"> + <button id="clicky">clicky</button> +</div> +<pre id="test"> +</pre> + +<script> + /** Test for Bug 1369627 **/ + add_task(async function resizeby() { + await SimpleTest.promiseFocus(); + + let clicky = document.querySelector("#clicky"); + + let popupPromise = new Promise(resolve => { + let linkclick = () => { + clicky.removeEventListener('click', linkclick); + let popup = window.open("about:blank", "_blank", "width=500,height=500"); + function loaded() { + is(popup.innerHeight, 500, "starting width is 500"); + is(popup.innerWidth, 500, "starting height in 500"); + + popup.resizeBy(50, 0); + + // We resized synchronously. If this happened, we sometimes won't fire + // an resize event, so we resolve immediately. + if (popup.innerWidth == 550) { + resolve(popup); + } else { + let popupresize = () => { + popup.removeEventListener('resize', popupresize); + resolve(popup); + }; + popup.addEventListener('resize', popupresize); + } + }; + popup.addEventListener("load", loaded, { once: true }) + }; + + clicky.addEventListener('click', linkclick); + }); + + synthesizeMouseAtCenter(clicky, {}, window); + + let popup = await popupPromise; + is(popup.innerHeight, 500, "ending height is 500"); + is(popup.innerWidth, 550, "ending width is 550"); + popup.close(); + }); +</script> +</body> +</html> |