addon-sdk/test/browser_sdk_loader_chrome.js

Thu, 15 Jan 2015 15:59:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 15:59:08 +0100
branch
TOR_BUG_9701
changeset 10
ac0c01689b40
permissions
-rw-r--r--

Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

michael@0 1 function test () {
michael@0 2 let loader = makeLoader();
michael@0 3 let module = Module("./main", gTestPath);
michael@0 4 let require = Require(loader, module);
michael@0 5
michael@0 6 const { Ci, Cc, Cu, components } = require("chrome");
michael@0 7
michael@0 8 let { generateUUID } = Cc["@mozilla.org/uuid-generator;1"]
michael@0 9 .getService(Ci.nsIUUIDGenerator);
michael@0 10 ok(isUUID(generateUUID()), "chrome.Cc and chrome.Ci works");
michael@0 11
michael@0 12 let { ID: parseUUID } = components;
michael@0 13 let uuidString = "00001111-2222-3333-4444-555566667777";
michael@0 14 let parsed = parseUUID(uuidString);
michael@0 15 is(parsed, "{" + uuidString + "}", "chrome.components works");
michael@0 16
michael@0 17 const { defer } = Cu.import("resource://gre/modules/Promise.jsm").Promise;
michael@0 18 let { promise, resolve } = defer();
michael@0 19 resolve(5);
michael@0 20 promise.then(val => {
michael@0 21 is(val, 5, "chrome.Cu works");
michael@0 22 finish();
michael@0 23 });
michael@0 24 }

mercurial