summaryrefslogtreecommitdiffstats
path: root/dom/html/test/file_cookiemanager.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/html/test/file_cookiemanager.js')
-rw-r--r--dom/html/test/file_cookiemanager.js20
1 files changed, 20 insertions, 0 deletions
diff --git a/dom/html/test/file_cookiemanager.js b/dom/html/test/file_cookiemanager.js
new file mode 100644
index 000000000..98f356534
--- /dev/null
+++ b/dom/html/test/file_cookiemanager.js
@@ -0,0 +1,20 @@
+let { classes: Cc, interfaces: Ci } = Components;
+addMessageListener("getCookieFromManager", ({ host, path }) => {
+ let cm = Cc["@mozilla.org/cookiemanager;1"]
+ .getService(Ci.nsICookieManager);
+ let values = [];
+ path = path.substring(0, path.lastIndexOf("/") + 1);
+ let e = cm.enumerator;
+ while (e.hasMoreElements()) {
+ let cookie = e.getNext().QueryInterface(Ci.nsICookie);
+ if (!cookie) {
+ break;
+ }
+ if (host != cookie.host || path != cookie.path) {
+ continue;
+ }
+ values.push(cookie.name + "=" + cookie.value);
+ }
+
+ sendAsyncMessage("getCookieFromManager:return", { cookie: values.join("; ") });
+});