summaryrefslogtreecommitdiffstats
path: root/addon-sdk/source/test/test-cuddlefish.js
diff options
context:
space:
mode:
Diffstat (limited to 'addon-sdk/source/test/test-cuddlefish.js')
-rw-r--r--addon-sdk/source/test/test-cuddlefish.js78
1 files changed, 0 insertions, 78 deletions
diff --git a/addon-sdk/source/test/test-cuddlefish.js b/addon-sdk/source/test/test-cuddlefish.js
deleted file mode 100644
index c92eaa624..000000000
--- a/addon-sdk/source/test/test-cuddlefish.js
+++ /dev/null
@@ -1,78 +0,0 @@
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-'use strict';
-
-const { Cc, Ci, Cu, CC, Cr, Cm, ChromeWorker, components } = require("chrome");
-
-const packaging = require("@loader/options");
-const app = require('sdk/system/xul-app');
-const { resolve } = require;
-
-const scriptLoader = Cc['@mozilla.org/moz/jssubscript-loader;1'].
- getService(Ci.mozIJSSubScriptLoader);
-const systemPrincipal = CC('@mozilla.org/systemprincipal;1', 'nsIPrincipal')();
-
-function loadSandbox(uri) {
- let proto = {
- sandboxPrototype: {
- loadSandbox: loadSandbox,
- ChromeWorker: ChromeWorker
- }
- };
- let sandbox = Cu.Sandbox(systemPrincipal, proto);
- // Create a fake commonjs environnement just to enable loading loader.js
- // correctly
- sandbox.exports = {};
- sandbox.module = { uri: uri, exports: sandbox.exports };
- sandbox.require = function (id) {
- if (id !== "chrome")
- throw new Error("Bootstrap sandbox `require` method isn't implemented.");
-
- return Object.freeze({ Cc: Cc, Ci: Ci, Cu: Cu, Cr: Cr, Cm: Cm,
- CC: CC, components: components,
- ChromeWorker: ChromeWorker });
- };
- scriptLoader.loadSubScript(uri, sandbox, 'UTF-8');
- return sandbox;
-}
-
-exports['test loader'] = function(assert) {
- let { Loader, Require, unload, override } = loadSandbox(resolve('sdk/loader/cuddlefish.js')).exports;
- var prints = [];
- function print(message) {
- prints.push(message);
- }
-
- let loader = Loader(override(packaging, {
- globals: {
- print: print,
- foo: 1
- }
- }));
- let require = Require(loader, module);
-
- var fixture = require('./loader/fixture');
-
- assert.equal(fixture.foo, 1, 'custom globals must work.');
- assert.equal(fixture.bar, 2, 'exports are set');
-
- assert.equal(prints[0], 'testing', 'global print must be injected.');
-
- var unloadsCalled = '';
-
- require("sdk/system/unload").when(function(reason) {
- assert.equal(reason, 'test', 'unload reason is passed');
- unloadsCalled += 'a';
- });
- require('sdk/system/unload.js').when(function() {
- unloadsCalled += 'b';
- });
-
- unload(loader, 'test');
-
- assert.equal(unloadsCalled, 'ba',
- 'loader.unload() must call listeners in LIFO order.');
-};
-
-require('sdk/test').run(exports);