gecko-dev/dom/html/test/test_bug369370.html
Brian Grinstead 0d460e3432 Bug 1544322 - Part 2.2 - Remove the [type] attribute for one-liner <script> tags loading files in /tests/SimpleTest/ in dom/ r=bzbarsky
This is split from the previous changeset since if we include dom/ the file size is too
large for phabricator to handle.

This is an autogenerated commit to handle scripts loading mochitest harness files, in
the simple case where the script src is on the same line as the tag.

This was generated with https://bug1544322.bmoattachments.org/attachment.cgi?id=9058170
using the `--part 2` argument.

Differential Revision: https://phabricator.services.mozilla.com/D27457

--HG--
extra : moz-landing-system : lando
2019-04-16 03:53:28 +00:00

150 lines
5.5 KiB
HTML

<!DOCTYPE html>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=369370
-->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test for Bug 369370</title>
<script src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<script type="text/javascript">
/*
* Test strategy:
*/
function makeClickFor(x, y) {
var event = kidDoc.createEvent("mouseevent");
event.initMouseEvent("click",
true, true, kidWin, 1, // bubbles, cancelable, view, single-click
x, y, x, y, // screen X/Y, client X/Y
false, false, false, false, // no key modifiers
0, null); // left click, not relatedTarget
return event;
}
function childLoaded() {
kidDoc = kidWin.document;
ok(true, "Child window loaded");
var elements = kidDoc.getElementsByTagName("img");
is(elements.length, 1, "looking for imagedoc img");
var img = elements[0];
// Need to use innerWidth/innerHeight of the window
// since the containing image is absolutely positioned,
// causing clientHeight to be zero.
is(kidWin.innerWidth, 400, "Checking doc width");
is(kidWin.innerHeight, 300, "Checking doc height");
// Image just loaded and is scaled to window size.
is(img.width, 400, "image width");
is(img.height, 300, "image height");
is(kidDoc.body.scrollLeft, 0, "Checking scrollLeft");
is(kidDoc.body.scrollTop, 0, "Checking scrollTop");
// ========== test 1 ==========
// Click in the upper left to zoom in
var event = makeClickFor(25,25);
img.dispatchEvent(event);
ok(true, "----- click 1 -----");
is(img.width, 800, "image width");
is(img.height, 600, "image height");
is(kidDoc.body.scrollLeft, 0, "Checking scrollLeft");
is(kidDoc.body.scrollTop, 0, "Checking scrollTop");
// ========== test 2 ==========
// Click there again to zoom out
event = makeClickFor(25,25);
img.dispatchEvent(event);
ok(true, "----- click 2 -----");
is(img.width, 400, "image width");
is(img.height, 300, "image height");
is(kidDoc.body.scrollLeft, 0, "Checking scrollLeft");
is(kidDoc.body.scrollTop, 0, "Checking scrollTop");
// ========== test 3 ==========
// Click in the lower right to zoom in
event = makeClickFor(350, 250);
img.dispatchEvent(event);
ok(true, "----- click 3 -----");
is(img.width, 800, "image width");
is(img.height, 600, "image height");
is(kidDoc.body.scrollLeft, 400, "Checking scrollLeft");
is(kidDoc.body.scrollTop, 300, "Checking scrollTop");
// ========== test 4 ==========
// Click there again to zoom out
event = makeClickFor(350, 250);
img.dispatchEvent(event);
ok(true, "----- click 4 -----");
is(img.width, 400, "image width");
is(img.height, 300, "image height");
is(kidDoc.body.scrollLeft, 0, "Checking scrollLeft");
is(kidDoc.body.scrollTop, 0, "Checking scrollTop");
// ========== test 5 ==========
// Click in the upper left to zoom in again
event = makeClickFor(25, 25);
img.dispatchEvent(event);
ok(true, "----- click 5 -----");
is(img.width, 800, "image width");
is(img.height, 600, "image height");
is(kidDoc.body.scrollLeft, 0, "Checking scrollLeft");
is(kidDoc.body.scrollTop, 0, "Checking scrollTop");
is(img.getBoundingClientRect().top, 0, "Image is in view vertically");
// ========== test 6 ==========
// Now try resizing the window so the image fits vertically.
function test6() {
kidWin.addEventListener("resize", function() {
// Give the image document time to respond
SimpleTest.executeSoon(function() {
is(img.height, 600, "image height");
is(img.getBoundingClientRect().top, 25, "Image is vertically centered");
test7();
});
}, {once: true});
var decorationSize = kidWin.outerHeight - kidWin.innerHeight;
kidWin.resizeTo(400, 600 + 50 + decorationSize);
}
// ========== test 7 ==========
// Now try resizing the window so the image no longer fits vertically.
function test7() {
kidWin.addEventListener("resize", function() {
// Give the image document time to respond
SimpleTest.executeSoon(function() {
is(img.height, 600, "image height");
is(img.getBoundingClientRect().top, 0, "Image is at top again");
kidWin.close();
SimpleTest.finish();
});
}, {once: true});
var decorationSize = kidWin.outerHeight - kidWin.innerHeight;
kidWin.resizeTo(400, 300 + decorationSize);
}
test6();
}
var kidWin;
var kidDoc;
SimpleTest.waitForExplicitFinish();
SpecialPowers.pushPrefEnv({"set":[["browser.enable_automatic_image_resizing", true]]}, function() {
kidWin = window.open("bug369370-popup.png", "bug369370", "width=400,height=300,scrollbars=no");
// will init onload
ok(kidWin, "opened child window");
kidWin.onload = childLoaded;
});
</script>
</body>
</html>