diff options
Diffstat (limited to 'addon-sdk/source/test/test-addon-bootstrap.js')
-rw-r--r-- | addon-sdk/source/test/test-addon-bootstrap.js | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/addon-sdk/source/test/test-addon-bootstrap.js b/addon-sdk/source/test/test-addon-bootstrap.js deleted file mode 100644 index 01e2d15fc..000000000 --- a/addon-sdk/source/test/test-addon-bootstrap.js +++ /dev/null @@ -1,97 +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 { Cu, Cc, Ci } = require("chrome"); -const { create, evaluate } = require("./fixtures/bootstrap/utils"); - -const ROOT = require.resolve("sdk/base64").replace("/sdk/base64.js", ""); - -// Note: much of this test code is from -// http://dxr.mozilla.org/mozilla-central/source/toolkit/mozapps/extensions/internal/XPIProvider.jsm -const BOOTSTRAP_REASONS = { - APP_STARTUP : 1, - APP_SHUTDOWN : 2, - ADDON_ENABLE : 3, - ADDON_DISABLE : 4, - ADDON_INSTALL : 5, - ADDON_UNINSTALL : 6, - ADDON_UPGRADE : 7, - ADDON_DOWNGRADE : 8 -}; - -exports["test install/startup/shutdown/uninstall all return a promise"] = function(assert) { - let uri = require.resolve("./fixtures/addon/bootstrap.js"); - let id = "test-min-boot@jetpack"; - let bootstrapScope = create({ - id: id, - uri: uri - }); - - // As we don't want our caller to control the JS version used for the - // bootstrap file, we run loadSubScript within the context of the - // sandbox with the latest JS version set explicitly. - bootstrapScope.ROOT = ROOT; - - evaluate({ - uri: uri, - scope: bootstrapScope - }); - - let addon = { - id: id, - version: "0.0.1", - resourceURI: { - spec: uri.replace("bootstrap.js", "") - } - }; - - let install = bootstrapScope.install(addon, BOOTSTRAP_REASONS.ADDON_INSTALL); - yield install.then(() => assert.pass("install returns a promise")); - - let startup = bootstrapScope.startup(addon, BOOTSTRAP_REASONS.ADDON_INSTALL); - yield startup.then(() => assert.pass("startup returns a promise")); - - let shutdown = bootstrapScope.shutdown(addon, BOOTSTRAP_REASONS.ADDON_DISABLE); - yield shutdown.then(() => assert.pass("shutdown returns a promise")); - - // calling shutdown multiple times is fine - shutdown = bootstrapScope.shutdown(addon, BOOTSTRAP_REASONS.ADDON_DISABLE); - yield shutdown.then(() => assert.pass("shutdown returns working promise on multiple calls")); - - let uninstall = bootstrapScope.uninstall(addon, BOOTSTRAP_REASONS.ADDON_UNINSTALL); - yield uninstall.then(() => assert.pass("uninstall returns a promise")); -} - -exports["test minimal bootstrap.js"] = function*(assert) { - let uri = require.resolve("./fixtures/addon/bootstrap.js"); - let bootstrapScope = create({ - id: "test-min-boot@jetpack", - uri: uri - }); - - // As we don't want our caller to control the JS version used for the - // bootstrap file, we run loadSubScript within the context of the - // sandbox with the latest JS version set explicitly. - bootstrapScope.ROOT = ROOT; - - assert.equal(typeof bootstrapScope.install, "undefined", "install DNE"); - assert.equal(typeof bootstrapScope.startup, "undefined", "startup DNE"); - assert.equal(typeof bootstrapScope.shutdown, "undefined", "shutdown DNE"); - assert.equal(typeof bootstrapScope.uninstall, "undefined", "uninstall DNE"); - - evaluate({ - uri: uri, - scope: bootstrapScope - }); - - assert.equal(typeof bootstrapScope.install, "function", "install exists"); - assert.equal(typeof bootstrapScope.startup, "function", "startup exists"); - assert.equal(typeof bootstrapScope.shutdown, "function", "shutdown exists"); - assert.equal(typeof bootstrapScope.uninstall, "function", "uninstall exists"); - - bootstrapScope.shutdown(null, BOOTSTRAP_REASONS.ADDON_DISABLE); -} - -require("sdk/test").run(exports); |