summaryrefslogtreecommitdiffstats
path: root/browser/components/uitour/test/browser_UITour_showProtectionReport.js
blob: fd8be561ac3777d7dfca903f8b30fbece49fb3a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/* Any copyright is dedicated to the Public Domain.
 * http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

var gTestTab;
var gContentAPI;

add_task(setup_UITourTest);

add_setup(async function () {
  await SpecialPowers.pushPrefEnv({
    set: [
      ["browser.contentblocking.database.enabled", false],
      ["browser.contentblocking.report.monitor.enabled", false],
      ["browser.contentblocking.report.lockwise.enabled", false],
      ["browser.contentblocking.report.proxy.enabled", false],
    ],
  });
});

// Test that we can switch to about:protections
add_UITour_task(async function test_openProtectionReport() {
  let aboutProtectionsLoaded = BrowserTestUtils.browserLoaded(
    gBrowser.selectedBrowser,
    false,
    "about:protections"
  );
  info("Showing about:protections");
  await gContentAPI.showProtectionReport();
  info("Waiting for about:protections to load");
  await aboutProtectionsLoaded;
  // When the graph is built it means the messaging has finished,
  // we can close the tab.
  await SpecialPowers.spawn(gBrowser.selectedBrowser, [], async function () {
    await ContentTaskUtils.waitForCondition(() => {
      let bars = content.document.querySelectorAll(".graph-bar");
      return bars.length;
    }, "The graph has been built");
  });

  is(
    gBrowser.selectedBrowser.currentURI.spec,
    "about:protections",
    "Loaded about:protections"
  );
});