diff options
Diffstat (limited to 'addon-sdk/source/test/test-deprecate.js')
-rw-r--r-- | addon-sdk/source/test/test-deprecate.js | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/addon-sdk/source/test/test-deprecate.js b/addon-sdk/source/test/test-deprecate.js deleted file mode 100644 index c1bd443c6..000000000 --- a/addon-sdk/source/test/test-deprecate.js +++ /dev/null @@ -1,160 +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 deprecate = require("sdk/util/deprecate"); -const { LoaderWithHookedConsole } = require("sdk/test/loader"); -const { get, set } = require("sdk/preferences/service"); -const PREFERENCE = "devtools.errorconsole.deprecation_warnings"; - -exports["test Deprecate Usage"] = function testDeprecateUsage(assert) { - set(PREFERENCE, true); - let { loader, messages } = LoaderWithHookedConsole(module); - let deprecate = loader.require("sdk/util/deprecate"); - - function functionIsDeprecated() { - deprecate.deprecateUsage("foo"); - } - - functionIsDeprecated(); - - assert.equal(messages.length, 1, "only one error is dispatched"); - assert.equal(messages[0].type, "error", "the console message is an error"); - - let msg = messages[0].msg; - - assert.ok(msg.indexOf("foo") !== -1, - "message contains the given message"); - assert.ok(msg.indexOf("functionIsDeprecated") !== -1, - "message contains name of the caller function"); - assert.ok(msg.indexOf(module.uri) !== -1, - "message contains URI of the caller module"); - - loader.unload(); -} - -exports["test Deprecate Function"] = function testDeprecateFunction(assert) { - set(PREFERENCE, true); - let { loader, messages } = LoaderWithHookedConsole(module); - let deprecate = loader.require("sdk/util/deprecate"); - - let self = {}; - let arg1 = "foo"; - let arg2 = {}; - - function originalFunction(a1, a2) { - assert.equal(this, self); - assert.equal(a1, arg1); - assert.equal(a2, arg2); - }; - - let deprecateFunction = deprecate.deprecateFunction(originalFunction, - "bar"); - - deprecateFunction.call(self, arg1, arg2); - - assert.equal(messages.length, 1, "only one error is dispatched"); - assert.equal(messages[0].type, "error", "the console message is an error"); - - let msg = messages[0].msg; - assert.ok(msg.indexOf("bar") !== -1, "message contains the given message"); - assert.ok(msg.indexOf("testDeprecateFunction") !== -1, - "message contains name of the caller function"); - assert.ok(msg.indexOf(module.uri) !== -1, - "message contains URI of the caller module"); - - loader.unload(); -} - -exports.testDeprecateEvent = function(assert, done) { - set(PREFERENCE, true); - let { loader, messages } = LoaderWithHookedConsole(module); - let deprecate = loader.require("sdk/util/deprecate"); - - let { on, emit } = loader.require('sdk/event/core'); - let testObj = {}; - testObj.on = deprecate.deprecateEvent(on.bind(null, testObj), 'BAD', ['fire']); - - testObj.on('fire', function() { - testObj.on('water', function() { - assert.equal(messages.length, 1, "only one error is dispatched"); - loader.unload(); - done(); - }) - assert.equal(messages.length, 1, "only one error is dispatched"); - emit(testObj, 'water'); - }); - - assert.equal(messages.length, 1, "only one error is dispatched"); - assert.equal(messages[0].type, "error", "the console message is an error"); - let msg = messages[0].msg; - assert.ok(msg.indexOf("BAD") !== -1, "message contains the given message"); - assert.ok(msg.indexOf("deprecateEvent") !== -1, - "message contains name of the caller function"); - assert.ok(msg.indexOf(module.uri) !== -1, - "message contains URI of the caller module"); - - emit(testObj, 'fire'); -} - -exports.testDeprecateSettingToggle = function (assert) { - let { loader, messages } = LoaderWithHookedConsole(module); - let deprecate = loader.require("sdk/util/deprecate"); - - function fn () { deprecate.deprecateUsage("foo"); } - - set(PREFERENCE, false); - fn(); - assert.equal(messages.length, 0, 'no deprecation warnings'); - - set(PREFERENCE, true); - fn(); - assert.equal(messages.length, 1, 'deprecation warnings when toggled'); - - set(PREFERENCE, false); - fn(); - assert.equal(messages.length, 1, 'no new deprecation warnings'); -}; - -exports.testDeprecateSetting = function (assert, done) { - // Set devtools.errorconsole.deprecation_warnings to false - set(PREFERENCE, false); - - let { loader, messages } = LoaderWithHookedConsole(module); - let deprecate = loader.require("sdk/util/deprecate"); - - // deprecateUsage test - function functionIsDeprecated() { - deprecate.deprecateUsage("foo"); - } - functionIsDeprecated(); - - assert.equal(messages.length, 0, - "no errors dispatched on deprecateUsage"); - - // deprecateFunction test - function originalFunction() {}; - - let deprecateFunction = deprecate.deprecateFunction(originalFunction, - "bar"); - deprecateFunction(); - - assert.equal(messages.length, 0, - "no errors dispatched on deprecateFunction"); - - // deprecateEvent - let { on, emit } = loader.require('sdk/event/core'); - let testObj = {}; - testObj.on = deprecate.deprecateEvent(on.bind(null, testObj), 'BAD', ['fire']); - - testObj.on('fire', () => { - assert.equal(messages.length, 0, - "no errors dispatched on deprecateEvent"); - done(); - }); - - emit(testObj, 'fire'); -} - -require("sdk/test").run(exports); |