Skip to content

Instantly share code, notes, and snippets.

@mattkime
Created December 27, 2011 06:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save mattkime/1522851 to your computer and use it in GitHub Desktop.
Save mattkime/1522851 to your computer and use it in GitHub Desktop.
added spread test
"use strict";
var Q = require("../q");
exports['test spread'] = function (ASSERT, done) {
Q.ref([1,2,3])
.spread(function (a, b, c) {
ASSERT.equal(a, 1, 'spread 1');
ASSERT.equal(b, 2, 'spread 2');
ASSERT.equal(c, 3, 'spread 3');
ASSERT.equal(arguments.length, 3, 'spread arguments length');
})
.fail(function (reason) {
ASSERT.ok(false, reason);
})
.fin(done)
};
exports['test spread all'] = function (ASSERT, done) {
Q.ref([1,2,3].map(Q.ref))
.all()
.spread(function (a, b, c) {
ASSERT.equal(a, 1, 'spread 1');
ASSERT.equal(b, 2, 'spread 2');
ASSERT.equal(c, 3, 'spread 3');
ASSERT.equal(arguments.length, 3, 'spread arguments length');
})
.fail(function (reason) {
ASSERT.ok(false, reason);
})
.fin(done)
};
exports['test spread all 2'] = function(ASSERT, done){
var a = function(){
var defer = Q.defer();
setTimeout(function(){ defer.resolve("a"); }, 1000);
return defer.promise;
}();
var b = function(){
var defer = Q.defer();
setTimeout(function(){ defer.resolve("b"); }, 1000);
return defer.promise;
}();
Q.all(a,b).spread(function(varA,varB){
ASSERT.equal(varA,"a","spread 1");
ASSERT.equal(varB,"b","spread 2");
ASSERT.equal(arguments.length, 2, 'spread arguments length');
}).end();
};
if (module == require.main) {
require('test').run(exports);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment