summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/popupNotifications/browser_popupNotification_learnmore.js
blob: fc3946598c33b1a258079d02f1e5b5716315921d (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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

function test() {
  waitForExplicitFinish();

  ok(PopupNotifications, "PopupNotifications object exists");
  ok(PopupNotifications.panel, "PopupNotifications panel exists");

  setup();
}

var tests = [
  // Test checkbox being checked by default
  {
    id: "without_learn_more",
    run() {
      this.notifyObj = new BasicNotification(this.id);
      showNotification(this.notifyObj);
    },
    onShown(popup) {
      checkPopup(popup, this.notifyObj);
      let notification = popup.children[0];
      let link = notification.querySelector(
        ".popup-notification-learnmore-link"
      );
      ok(!link.href, "no href");
      is(
        window.getComputedStyle(link).getPropertyValue("display"),
        "none",
        "link hidden"
      );
      dismissNotification(popup);
    },
    onHidden() {},
  },

  // Test that passing the learnMoreURL field sets up the link.
  {
    id: "with_learn_more",
    run() {
      this.notifyObj = new BasicNotification(this.id);
      this.notifyObj.options.learnMoreURL = "https://mozilla.org";
      showNotification(this.notifyObj);
    },
    onShown(popup) {
      checkPopup(popup, this.notifyObj);
      let notification = popup.children[0];
      let link = notification.querySelector(
        ".popup-notification-learnmore-link"
      );
      is(link.textContent, "Learn more", "correct label");
      is(link.href, "https://mozilla.org", "correct href");
      isnot(
        window.getComputedStyle(link).getPropertyValue("display"),
        "none",
        "link not hidden"
      );
      dismissNotification(popup);
    },
    onHidden() {},
  },
];