Fri, 16 Jan 2015 04:50:19 +0100
Replace accessor implementation with direct member state manipulation, by
request https://trac.torproject.org/projects/tor/ticket/9701#comment:32
1 var gNotifications = 0;
3 var observer = {
4 QueryInterface: function(iid) {
5 if (Ci.nsIPrivacyTransitionObserver.equals(iid) ||
6 Ci.nsISupportsWeakReference.equals(iid) ||
7 Ci.nsISupports.equals(iid))
8 return this;
9 throw Cr.NS_ERROR_NO_INTERFACE;
10 },
12 privateModeChanged: function(enabled) {
13 gNotifications++;
14 }
15 }
17 function run_test() {
18 var docshell = Cc["@mozilla.org/docshell;1"].createInstance(Ci.nsIDocShell);
19 docshell.addWeakPrivacyTransitionObserver(observer);
20 docshell.QueryInterface(Ci.nsILoadContext).usePrivateBrowsing = true;
21 docshell.QueryInterface(Ci.nsILoadContext).usePrivateBrowsing = false;
22 do_check_eq(gNotifications, 2);
23 }