summaryrefslogtreecommitdiffstats
path: root/browser/components/uitour/test/browser_trackingProtection.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/uitour/test/browser_trackingProtection.js')
-rw-r--r--browser/components/uitour/test/browser_trackingProtection.js90
1 files changed, 0 insertions, 90 deletions
diff --git a/browser/components/uitour/test/browser_trackingProtection.js b/browser/components/uitour/test/browser_trackingProtection.js
deleted file mode 100644
index 32a9920ec..000000000
--- a/browser/components/uitour/test/browser_trackingProtection.js
+++ /dev/null
@@ -1,90 +0,0 @@
-"use strict";
-
-var {classes: Cc, interfaces: Ci, utils: Cu, results: Cr} = Components;
-const PREF_INTRO_COUNT = "privacy.trackingprotection.introCount";
-const PREF_TP_ENABLED = "privacy.trackingprotection.enabled";
-const BENIGN_PAGE = "http://tracking.example.org/browser/browser/base/content/test/general/benignPage.html";
-const TRACKING_PAGE = "http://tracking.example.org/browser/browser/base/content/test/general/trackingPage.html";
-const TOOLTIP_PANEL = document.getElementById("UITourTooltip");
-const TOOLTIP_ANCHOR = document.getElementById("tracking-protection-icon");
-
-var {UrlClassifierTestUtils} = Cu.import("resource://testing-common/UrlClassifierTestUtils.jsm", {});
-
-registerCleanupFunction(function() {
- UrlClassifierTestUtils.cleanupTestTrackers();
- Services.prefs.clearUserPref(PREF_TP_ENABLED);
- Services.prefs.clearUserPref(PREF_INTRO_COUNT);
-});
-
-function allowOneIntro() {
- Services.prefs.setIntPref(PREF_INTRO_COUNT, TrackingProtection.MAX_INTROS - 1);
-}
-
-add_task(function* setup_test() {
- Services.prefs.setBoolPref(PREF_TP_ENABLED, true);
- yield UrlClassifierTestUtils.addTestTrackers();
-});
-
-add_task(function* test_benignPage() {
- info("Load a test page not containing tracking elements");
- allowOneIntro();
- yield BrowserTestUtils.withNewTab({gBrowser, url: BENIGN_PAGE}, function*() {
- yield waitForConditionPromise(() => {
- return is_visible(TOOLTIP_PANEL);
- }, "Info panel shouldn't appear on a benign page").
- then(() => ok(false, "Info panel shouldn't appear"),
- () => {
- ok(true, "Info panel didn't appear on a benign page");
- });
-
- });
-});
-
-add_task(function* test_trackingPages() {
- info("Load a test page containing tracking elements");
- allowOneIntro();
- yield BrowserTestUtils.withNewTab({gBrowser, url: TRACKING_PAGE}, function*() {
- yield new Promise((resolve, reject) => {
- waitForPopupAtAnchor(TOOLTIP_PANEL, TOOLTIP_ANCHOR, resolve,
- "Intro panel should appear");
- });
-
- is(Services.prefs.getIntPref(PREF_INTRO_COUNT), TrackingProtection.MAX_INTROS, "Check intro count increased");
-
- let step2URL = Services.urlFormatter.formatURLPref("privacy.trackingprotection.introURL") +
- "?step=2&newtab=true";
- let buttons = document.getElementById("UITourTooltipButtons");
-
- info("Click the step text and nothing should happen");
- let tabCount = gBrowser.tabs.length;
- yield EventUtils.synthesizeMouseAtCenter(buttons.children[0], {});
- is(gBrowser.tabs.length, tabCount, "Same number of tabs should be open");
-
- info("Resetting count to test that viewing the tour prevents future panels");
- allowOneIntro();
-
- let panelHiddenPromise = promisePanelElementHidden(window, TOOLTIP_PANEL);
- let tabPromise = BrowserTestUtils.waitForNewTab(gBrowser, step2URL);
- info("Clicking the main button");
- EventUtils.synthesizeMouseAtCenter(buttons.children[1], {});
- let tab = yield tabPromise;
- is(Services.prefs.getIntPref(PREF_INTRO_COUNT), TrackingProtection.MAX_INTROS,
- "Check intro count is at the max after opening step 2");
- is(gBrowser.tabs.length, tabCount + 1, "Tour step 2 tab opened");
- yield panelHiddenPromise;
- ok(true, "Panel hid when the button was clicked");
- yield BrowserTestUtils.removeTab(tab);
- });
-
- info("Open another tracking page and make sure we don't show the panel again");
- yield BrowserTestUtils.withNewTab({gBrowser, url: TRACKING_PAGE}, function*() {
- yield waitForConditionPromise(() => {
- return is_visible(TOOLTIP_PANEL);
- }, "Info panel shouldn't appear more than MAX_INTROS").
- then(() => ok(false, "Info panel shouldn't appear again"),
- () => {
- ok(true, "Info panel didn't appear more than MAX_INTROS on tracking pages");
- });
-
- });
-});