Example #1
0
exports.testParamedSetTimeout = function(assert, end) {
  let params = [1, 'foo', { bar: 'test' }, null, undefined];
  timer.setTimeout.apply(null, [function() {
    assert.equal(arguments.length, params.length);
    for (let i = 0, ii = params.length; i < ii; i++)
      assert.equal(params[i], arguments[i]);
    end();
  }, 1].concat(params));
};
Example #2
0
exports.testParamedClearTimeout = function(assert, end) {
  let params = [1, 'foo', { bar: 'test' }, null, undefined];
  var myFunc = function myFunc() {
    assert.fail("myFunc() should not be called in testClearTimeout");
  };
  var id = timer.setTimeout(myFunc, 1);
  timer.setTimeout.apply(null, [function() {
    assert.equal(arguments.length, params.length);
    for (let i = 0, ii = params.length; i < ii; i++)
      assert.equal(params[i], arguments[i]);
    end();
  }, 1].concat(params));
  timer.clearTimeout(id);
};
Example #3
0
 * like setImmidiate or setInterval,
 * which are used in3rd party libs.
 * This loader solves this issues.
 * Is used to laod unserscore and shim/vow.js libs
 */
var Env = require('env/env.js');
if (Env.background && Env.firefox) {
    var toolkitLoader = require('toolkit/loader'),
        Require = toolkitLoader.Require,
        Loader = toolkitLoader.Loader,
        timer = require('sdk/timers'),
        loader = Loader(toolkitLoader.override(require('@loader/options'), {
            globals: toolkitLoader.override(require('sdk/system/globals'), {
                setImmediate: timer.setImmediate.bind(timer),
                clearImmediate: timer.clearImmediate.bind(timer),
                setTimeout: timer.setTimeout.bind(timer),
                setInterval: timer.setInterval.bind(timer),
                clearTimeout: timer.clearTimeout.bind(timer),
                clearInterval: timer.clearInterval.bind(timer),
            })
        }));

    (function () {
        var require = Require(loader, module);

        exports.vow = require('vow');
        exports.underscore = require('underscore');
    })();
} else {
    exports.vow = require('vow');
    exports.underscore = require('underscore');