Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

const PAGEURI = NetUtil.newURI("http://deliciousbacon.com/");
add_task(async function () {
// First, add a history entry or else Places can't save a favicon.
await PlacesTestUtils.addVisits({
uri: PAGEURI,
transition: TRANSITION_LINK,
visitDate: Date.now() * 1000,
});
await new Promise(resolve => {
function onSetComplete(aURI, aDataLen, aData, aMimeType, aWidth) {
equal(aURI.spec, SMALLSVG_DATA_URI.spec, "setFavicon aURI check");
equal(aDataLen, 263, "setFavicon aDataLen check");
equal(aMimeType, "image/svg+xml", "setFavicon aMimeType check");
dump(aWidth);
resolve();
}
PlacesUtils.favicons.setAndFetchFaviconForPage(
PAGEURI,
SMALLSVG_DATA_URI,
false,
PlacesUtils.favicons.FAVICON_LOAD_NON_PRIVATE,
onSetComplete,
Services.scriptSecurityManager.getSystemPrincipal()
);
});
let data = await PlacesUtils.promiseFaviconData(PAGEURI.spec);
equal(data.uri.spec, SMALLSVG_DATA_URI.spec, "getFavicon aURI check");
equal(data.dataLen, 263, "getFavicon aDataLen check");
equal(data.mimeType, "image/svg+xml", "getFavicon aMimeType check");
});