diff options
Diffstat (limited to 'tools/addon-sdk-1.7/packages/api-utils/tests/helpers.js')
-rw-r--r-- | tools/addon-sdk-1.7/packages/api-utils/tests/helpers.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tools/addon-sdk-1.7/packages/api-utils/tests/helpers.js b/tools/addon-sdk-1.7/packages/api-utils/tests/helpers.js new file mode 100644 index 0000000..c639849 --- /dev/null +++ b/tools/addon-sdk-1.7/packages/api-utils/tests/helpers.js @@ -0,0 +1,24 @@ +/* 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 { Loader } = require("@loader"); + +exports.Loader = function(module, globals, packaging) { + var options = packaging || JSON.parse(JSON.stringify(require("@packaging"))); + options.globals = globals; + + let loader = Loader.new(options); + return Object.create(loader, { + require: { value: Loader.require.bind(loader, module.path) }, + sandbox: { value: function sandbox(id) { + let path = options.manifest[module.path].requirements[id].path; + return loader.sandboxes[path].sandbox; + }}, + unload: { value: function unload(reason, callback) { + loader.unload(reason, callback); + }} + }) +}; |