express-promise
Version:
An [express.js](http://expressjs.com) middleware for easy rendering async query.
58 lines (48 loc) • 1.21 kB
JavaScript
require('./spec_helper');
var expressPromise = require('..');
describe('json', function() {
it('should work well without Promise', function(done) {
var res = {
json: function(body) {
arguments.should.have.length(1);
body.should.equal('hi');
done();
}
};
expressPromise({methods: ['json']})(null, res);
res.json('hi');
});
it('should support Promise', function(done) {
var res = {
json: function(body) {
arguments.should.have.length(1);
body.promise.should.equal('hi');
done();
}
};
expressPromise({methods: ['json']})(null, res);
function async(callback) {
callback(null, 'hi');
}
res.json({
promise: async.promise()
});
});
it('should support two arguments', function(done) {
var res = {
json: function(status, body) {
arguments.should.have.length(2);
status.should.equal(200);
body.promise.should.equal('hi');
done();
}
};
expressPromise({methods: ['json']})(null, res);
function async(callback) {
callback(null, 'hi');
}
res.json(200, {
promise: async.promise()
});
});
});