summaryrefslogtreecommitdiffstats
path: root/docshell/test/unit/test_privacy_transition.js
blob: 829e25c3c22169ddda4b39d611c8480d0f071e36 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var gNotifications = 0;

var observer = {
  QueryInterface: function(iid) {
    if (Ci.nsIPrivacyTransitionObserver.equals(iid) ||
        Ci.nsISupportsWeakReference.equals(iid) ||
        Ci.nsISupports.equals(iid))
      return this;
    throw Cr.NS_ERROR_NO_INTERFACE;
  },
  
  privateModeChanged: function(enabled) {
    gNotifications++;
  }
}

function run_test() {
  var docshell = Cc["@mozilla.org/docshell;1"].createInstance(Ci.nsIDocShell);
  docshell.addWeakPrivacyTransitionObserver(observer);
  docshell.setOriginAttributes({ privateBrowsingId : 1 });
  docshell.setOriginAttributes({ privateBrowsingId : 0 });
  do_check_eq(gNotifications, 2);
}