mirror of
https://github.com/kennethreitz/bake.git
synced 2026-06-05 23:00:17 +00:00
cleanup
This commit is contained in:
+7
@@ -0,0 +1,7 @@
|
||||
delete global.Promise;
|
||||
require('es6-promise').polyfill();
|
||||
|
||||
var helpers = require('./helpers');
|
||||
|
||||
describe('denodeify with es6 promise', helpers.basicDenodeify);
|
||||
describe('denodeify with es6 promise using multiple arguments', helpers.multipleArguments);
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
delete global.Promise;
|
||||
require('es6-shim');
|
||||
|
||||
var helpers = require('./helpers');
|
||||
|
||||
describe('denodeify with es6 shim', helpers.basicDenodeify);
|
||||
describe('denodeify with es6 shim using multiple arguments', helpers.multipleArguments);
|
||||
+56
@@ -0,0 +1,56 @@
|
||||
var assert = require('assert');
|
||||
var denodeify = require('../');
|
||||
|
||||
function myNodeStyleFunction(argument1, argument2, callback) {
|
||||
if (argument1 && argument2) {
|
||||
callback(null, argument1+argument2);
|
||||
} else {
|
||||
callback('Need both arguments');
|
||||
}
|
||||
}
|
||||
|
||||
exports.basicDenodeify = function() {
|
||||
it('should resolve when there are no errors', function(done) {
|
||||
var myDenodeifiedNodeStyleFunction = denodeify(myNodeStyleFunction);
|
||||
myDenodeifiedNodeStyleFunction(1, 2)
|
||||
.then(function(result) {
|
||||
assert.equal(3, result);
|
||||
done();
|
||||
}, function() {
|
||||
throw new Error('Error callback called wrongly');
|
||||
});
|
||||
});
|
||||
|
||||
it('should reject when there are errors', function(done) {
|
||||
var myDenodeifiedNodeStyleFunction = denodeify(myNodeStyleFunction);
|
||||
var promise = myDenodeifiedNodeStyleFunction(1, undefined);
|
||||
assert(promise instanceof Promise);
|
||||
promise
|
||||
.then(function(result) {
|
||||
throw new Error('A Promised myNodeStyleFunction with one argument should never resolve');
|
||||
}, function(error) {
|
||||
assert.equal(error, 'Need both arguments');
|
||||
done();
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
function multipleArgumentsNodeStyleFunction(callback) {
|
||||
callback(null, 'a', 'b');
|
||||
}
|
||||
|
||||
function myFilter(err, a, b) {
|
||||
return [err, [a, b]];
|
||||
}
|
||||
|
||||
exports.multipleArguments = function() {
|
||||
it('should pass multiple arguments to the next then', function(done) {
|
||||
var myDenodeifiedNodeStyleFunction = denodeify(multipleArgumentsNodeStyleFunction, myFilter);
|
||||
myDenodeifiedNodeStyleFunction()
|
||||
.then(function(results) {
|
||||
assert.equal(results[0], 'a');
|
||||
assert.equal(results[1], 'b');
|
||||
done();
|
||||
});
|
||||
});
|
||||
};
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
delete global.Promise;
|
||||
global.Promise = require('lie');
|
||||
|
||||
var helpers = require('./helpers');
|
||||
|
||||
describe('denodeify with lie', helpers.basicDenodeify);
|
||||
describe('denodeify with lie using multiple arguments', helpers.multipleArguments);
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
delete global.Promise;
|
||||
require("native-promise-only");
|
||||
|
||||
var helpers = require('./helpers');
|
||||
|
||||
describe('denodeify with native promise only', helpers.basicDenodeify);
|
||||
describe('denodeify with native promise only using multiple arguments', helpers.multipleArguments);
|
||||
Reference in New Issue
Block a user