fune/browser/base/content/test/zoom/browser_subframe_textzoom.js
Gijs Kruitbosch 61e522c615 Bug 1537719 - move page zoom tests and make them more reliable, r=morgan
This moves a bunch of tests over to a topical directory, and removes the
linux/windows running restrictions around browser_bug1015721.js
(now browser_mousewheel_zoom.js), given that it appears to run fine on try
and there are no recent logs with which we can diagnose failures.

It switches away from using FullZoom.reset repeatedly in the background_zoom
test because that trips https://bugzilla.mozilla.org/show_bug.cgi?id=1604236
which breaks subsequent tests.

Differential Revision: https://phabricator.services.mozilla.com/D89484
2020-09-08 20:34:11 +00:00

51 lines
1.7 KiB
JavaScript

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/*
* Test the fix for bug 441778 to ensure site-specific page zoom doesn't get
* modified by sub-document loads of content from a different domain.
*/
function test() {
waitForExplicitFinish();
const TEST_PAGE_URL = 'data:text/html,<body><iframe src=""></iframe></body>';
const TEST_IFRAME_URL = "http://test2.example.org/";
(async function() {
// Prepare the test tab
let tab = BrowserTestUtils.addTab(gBrowser);
await FullZoomHelper.selectTabAndWaitForLocationChange(tab);
let testBrowser = tab.linkedBrowser;
await FullZoomHelper.load(tab, TEST_PAGE_URL);
// Change the zoom level and then save it so we can compare it to the level
// after loading the sub-document.
FullZoom.enlarge();
var zoomLevel = ZoomManager.zoom;
// Start the sub-document load.
await new Promise(resolve => {
executeSoon(function() {
BrowserTestUtils.browserLoaded(testBrowser, true).then(url => {
is(url, TEST_IFRAME_URL, "got the load event for the iframe");
is(
ZoomManager.zoom,
zoomLevel,
"zoom is retained after sub-document load"
);
FullZoomHelper.removeTabAndWaitForLocationChange().then(() =>
resolve()
);
});
SpecialPowers.spawn(testBrowser, [TEST_IFRAME_URL], url => {
content.document.querySelector("iframe").src = url;
});
});
});
})().then(finish, FullZoomHelper.failAndContinue(finish));
}