mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-11-11 21:58:41 +02:00
78 lines
2.5 KiB
JavaScript
78 lines
2.5 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
const PRELOAD_PREF = "browser.newtab.preload";
|
|
|
|
gDirectorySource = "data:application/json," + JSON.stringify({
|
|
"en-US": [{
|
|
url: "http://example.com/",
|
|
enhancedImageURI: "data:image/png;base64,helloWORLD",
|
|
title: "title",
|
|
type: "organic"
|
|
}]
|
|
});
|
|
|
|
function runTests() {
|
|
let origEnhanced = NewTabUtils.allPages.enhanced;
|
|
registerCleanupFunction(() => {
|
|
Services.prefs.clearUserPref(PRELOAD_PREF);
|
|
NewTabUtils.allPages.enhanced = origEnhanced;
|
|
});
|
|
|
|
Services.prefs.setBoolPref(PRELOAD_PREF, false);
|
|
|
|
function getData(cellNum) {
|
|
let cell = getCell(cellNum);
|
|
if (!cell.site)
|
|
return null;
|
|
let siteNode = cell.site.node;
|
|
return {
|
|
type: siteNode.getAttribute("type"),
|
|
enhanced: siteNode.querySelector(".enhanced-content").style.backgroundImage,
|
|
title: siteNode.querySelector(".newtab-title").textContent,
|
|
};
|
|
}
|
|
|
|
// Make the page have a directory link followed by a history link
|
|
yield setLinks("-1");
|
|
|
|
// Test with enhanced = false
|
|
NewTabUtils.allPages.enhanced = false;
|
|
yield addNewTabPageTab();
|
|
let {type, enhanced, title} = getData(0);
|
|
is(type, "organic", "directory link is organic");
|
|
isnot(enhanced, "", "directory link has enhanced image");
|
|
is(title, "title");
|
|
|
|
is(getData(1), null, "history link pushed out by directory link");
|
|
|
|
// Test with enhanced = true
|
|
NewTabUtils.allPages.enhanced = true;
|
|
yield addNewTabPageTab();
|
|
({type, enhanced, title} = getData(0));
|
|
is(type, "organic", "directory link is still organic");
|
|
isnot(enhanced, "", "directory link still has enhanced image");
|
|
is(title, "title");
|
|
|
|
is(getData(1), null, "history link still pushed out by directory link");
|
|
|
|
// Test with a pinned link
|
|
setPinnedLinks("-1");
|
|
yield addNewTabPageTab();
|
|
({type, enhanced, title} = getData(0));
|
|
is(type, "enhanced", "pinned history link is enhanced");
|
|
isnot(enhanced, "", "pinned history link has enhanced image");
|
|
is(title, "title");
|
|
|
|
is(getData(1), null, "directory link pushed out by pinned history link");
|
|
|
|
// Test pinned link with enhanced = false
|
|
NewTabUtils.allPages.enhanced = false;
|
|
yield addNewTabPageTab();
|
|
({type, enhanced, title} = getData(0));
|
|
isnot(type, "enhanced", "history link is not enhanced");
|
|
is(enhanced, "", "history link has no enhanced image");
|
|
is(title, "site#-1");
|
|
|
|
is(getData(1), null, "directory link still pushed out by pinned history link");
|
|
}
|