forked from mirrors/gecko-dev
This commit also moves the remaining trackingUI_* tests out of b/b/c/test/general, since I needed to touch them anyway Differential Revision: https://phabricator.services.mozilla.com/D2935 --HG-- rename : browser/base/content/test/general/benignPage.html => browser/base/content/test/trackingUI/benignPage.html rename : browser/base/content/test/general/browser_trackingUI_3.js => browser/base/content/test/trackingUI/browser_trackingUI_3.js rename : browser/base/content/test/general/browser_trackingUI_4.js => browser/base/content/test/trackingUI/browser_trackingUI_animation_2.js rename : browser/base/content/test/general/browser_trackingUI_6.js => browser/base/content/test/trackingUI/browser_trackingUI_fetch.js rename : browser/base/content/test/general/browser_trackingUI_5.js => browser/base/content/test/trackingUI/browser_trackingUI_pbmode_exceptions.js rename : browser/base/content/test/general/browser_trackingUI_telemetry.js => browser/base/content/test/trackingUI/browser_trackingUI_telemetry.js rename : browser/base/content/test/general/file_trackingUI_6.html => browser/base/content/test/trackingUI/file_trackingUI_fetch.html rename : browser/base/content/test/general/file_trackingUI_6.js => browser/base/content/test/trackingUI/file_trackingUI_fetch.js rename : browser/base/content/test/general/file_trackingUI_6.js^headers^ => browser/base/content/test/trackingUI/file_trackingUI_fetch.js^headers^ rename : browser/base/content/test/general/trackingPage.html => browser/base/content/test/trackingUI/trackingPage.html extra : rebase_source : 2a12463ab2ba39bdcf077580a2d6e565f80c879c
44 lines
1.6 KiB
JavaScript
44 lines
1.6 KiB
JavaScript
const URL = "http://mochi.test:8888/browser/browser/base/content/test/trackingUI/file_trackingUI_fetch.html";
|
|
|
|
function waitForSecurityChange(numChanges = 1) {
|
|
return new Promise(resolve => {
|
|
let n = 0;
|
|
let listener = {
|
|
onSecurityChange() {
|
|
n = n + 1;
|
|
info("Received onSecurityChange event " + n + " of " + numChanges);
|
|
if (n >= numChanges) {
|
|
gBrowser.removeProgressListener(listener);
|
|
resolve();
|
|
}
|
|
}
|
|
};
|
|
gBrowser.addProgressListener(listener);
|
|
});
|
|
}
|
|
|
|
add_task(async function test_fetch() {
|
|
await SpecialPowers.pushPrefEnv({ set: [
|
|
["privacy.trackingprotection.enabled", true],
|
|
["browser.contentblocking.enabled", true],
|
|
]});
|
|
|
|
await BrowserTestUtils.withNewTab({ gBrowser, url: URL }, async function(newTabBrowser) {
|
|
let securityChange = waitForSecurityChange();
|
|
await ContentTask.spawn(newTabBrowser, null, async function() {
|
|
await content.wrappedJSObject.test_fetch()
|
|
.then(response => Assert.ok(false, "should have denied the request"))
|
|
.catch(e => Assert.ok(true, `Caught exception: ${e}`));
|
|
});
|
|
await securityChange;
|
|
|
|
let ContentBlocking = newTabBrowser.ownerGlobal.ContentBlocking;
|
|
ok(ContentBlocking, "got CB object");
|
|
ok(ContentBlocking.enabled, "CB is enabled");
|
|
|
|
ok(ContentBlocking.content.hasAttribute("detected"), "has detected content blocking");
|
|
ok(ContentBlocking.iconBox.hasAttribute("active"), "icon box is active");
|
|
is(ContentBlocking.iconBox.getAttribute("tooltiptext"),
|
|
gNavigatorBundle.getString("trackingProtection.icon.activeTooltip"), "correct tooltip");
|
|
});
|
|
});
|