fune/browser/base/content/test/favicons/browser_bug408415.js
Kris Maglione 94e3b0bd8d Bug 1596918: Part 3a - Scripted rewrite of most ContentTask.spawn calls to SpecialPowers.spawn calls. r=mccr8,remote-protocol-reviewers,ato
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.

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

--HG--
extra : moz-landing-system : lando
2019-12-13 20:36:16 +00:00

34 lines
993 B
JavaScript

add_task(async function test() {
let testPath = getRootDirectory(gTestPath);
await BrowserTestUtils.withNewTab(
{ gBrowser, url: "about:blank" },
async function(tabBrowser) {
const URI = testPath + "file_with_favicon.html";
const expectedIcon = testPath + "file_generic_favicon.ico";
let faviconPromise = waitForLinkAvailable(tabBrowser);
BrowserTestUtils.loadURI(tabBrowser, URI);
let iconURI = await faviconPromise;
is(iconURI, expectedIcon, "Correct icon before pushState.");
faviconPromise = waitForLinkAvailable(tabBrowser);
await SpecialPowers.spawn(tabBrowser, [], function() {
content.location.href += "#foo";
});
TestUtils.executeSoon(() => {
faviconPromise.cancel();
});
try {
await faviconPromise;
ok(false, "Should not have seen a new icon load.");
} catch (e) {
ok(true, "Should have been able to cancel the promise.");
}
}
);
});