diff options
Diffstat (limited to 'addon-sdk/source/test/fixtures/jsm-package')
-rw-r--r-- | addon-sdk/source/test/fixtures/jsm-package/Test.jsm | 11 | ||||
-rw-r--r-- | addon-sdk/source/test/fixtures/jsm-package/index.js | 46 | ||||
-rw-r--r-- | addon-sdk/source/test/fixtures/jsm-package/package.json | 3 |
3 files changed, 60 insertions, 0 deletions
diff --git a/addon-sdk/source/test/fixtures/jsm-package/Test.jsm b/addon-sdk/source/test/fixtures/jsm-package/Test.jsm new file mode 100644 index 000000000..3e71b456a --- /dev/null +++ b/addon-sdk/source/test/fixtures/jsm-package/Test.jsm @@ -0,0 +1,11 @@ +/* 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"; + +this.EXPORTED_SYMBOLS = ["Test"]; + +this.Test = { + square: function (x) { return x * x; } +}; diff --git a/addon-sdk/source/test/fixtures/jsm-package/index.js b/addon-sdk/source/test/fixtures/jsm-package/index.js new file mode 100644 index 000000000..e20721c76 --- /dev/null +++ b/addon-sdk/source/test/fixtures/jsm-package/index.js @@ -0,0 +1,46 @@ +/* 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'; + +var { Test } = require('./Test.jsm'); +var { Test: Test2 } = require('./Test.jsm'); +exports.localJSM = Test.square(16) === 256; +exports.localJSMCached = Test === Test2; + +(function () { +var { Promise } = require('resource://gre/modules/Promise.jsm'); +var { defer } = require('resource://gre/modules/Promise.jsm').Promise; + +exports.isCachedAbsolute = Promise.defer === defer; + +exports.isLoadedAbsolute = function (val) { + let { promise, resolve } = Promise.defer(); + resolve(val); + return promise; +}; +})(); + +(function () { +var { Promise } = require('modules/Promise.jsm'); +var { defer } = require('modules/Promise.jsm').Promise; +exports.isCachedPath = Promise.defer === defer; + +exports.isLoadedPath = function (val) { + let { promise, resolve } = Promise.defer(); + resolve(val); + return promise; +}; +})(); + +(function () { +var { defer } = require('resource://gre/modules/commonjs/sdk/core/promise.js'); +var { defer: defer2 } = require('resource://gre/modules/commonjs/sdk/core/promise.js'); +exports.isCachedJSAbsolute = defer === defer2; +exports.isLoadedJSAbsolute = function (val) { + let { promise, resolve } = defer(); + resolve(val); + return promise; +}; +})(); diff --git a/addon-sdk/source/test/fixtures/jsm-package/package.json b/addon-sdk/source/test/fixtures/jsm-package/package.json new file mode 100644 index 000000000..2e8caf211 --- /dev/null +++ b/addon-sdk/source/test/fixtures/jsm-package/package.json @@ -0,0 +1,3 @@ +{ + "name": "jsm-package" +} |