1 SimpleTest
.waitForExplicitFinish();
5 var gExpectedCookies
= 0;
6 var gExpectedLoads
= 0;
9 function setupTest(uri
, cookies
, loads
) {
10 netscape
.security
.PrivilegeManager
.enablePrivilege("UniversalXPConnect");
12 var prefs
= Components
.classes
["@mozilla.org/preferences-service;1"]
13 .getService(Components
.interfaces
.nsIPrefBranch
);
14 prefs
.setIntPref("network.cookie.cookieBehavior", 1);
16 var cs
= Components
.classes
["@mozilla.org/cookiemanager;1"]
17 .getService(Components
.interfaces
.nsICookieManager2
);
20 gExpectedCookies
= cookies
;
21 gExpectedLoads
= loads
;
23 // load a window which contains an iframe; each will attempt to set
24 // cookies from their respective domains.
25 gPopup
= window
.open(uri
, 'hai', 'width=100,height=100');
28 /** Receives MessageEvents to this window. */
29 function messageReceiver(evt
)
31 ok(evt
instanceof MessageEvent
, "wrong event type");
33 if (evt
.data
== "message")
36 ok(false, "wrong message");
41 // only run the test when all our children are done loading & setting cookies
42 if (gLoads
== gExpectedLoads
)
47 // set a cookie from a domain of "localhost"
48 document
.cookie
= "oh=hai";
50 netscape
.security
.PrivilegeManager
.enablePrivilege("UniversalXPConnect");
51 var cs
= Components
.classes
["@mozilla.org/cookiemanager;1"]
52 .getService(Components
.interfaces
.nsICookieManager
);
53 var list
= cs
.enumerator
;
55 while (list
.hasMoreElements()) {
59 is(count
, gExpectedCookies
, "incorrect number of cookies");
66 window
.addEventListener("message", messageReceiver
, false);