@incdevco/framework
Version:
node.js lambda framework
97 lines (53 loc) • 1.79 kB
JavaScript
var Expect = require('chai').expect;
var Mock = require('../../mock');
var Sinon = require('sinon');
var Lambda = require('./index');
describe('lambda kinesis', function () {
'use strict';
var config, lambda, mock, sandbox;
beforeEach(function () {
config = {};
lambda = new Lambda(config);
mock = new Mock();
sandbox = Sinon.sandbox.create();
sandbox.stub(lambda, 'log');
});
afterEach(function () {
mock.restore();
sandbox.verifyAndRestore();
});
describe('handler', function () {
it('should', function (done) {
var context, event, expected;
context = {
fail: done,
succeed: function (result) {
Expect(result).to.equal(expected, 'result');
mock.done(done);
}
};
event = require('./example-event.json');
expected = 1;
lambda.handler(event, context);
});
it('should catch any exception thrown by handleRecord', function (done) {
var context, event, expected;
context = {
succeed: done,
fail: function (result) {
try {
Expect(result).to.deep.equal(expected, 'result');
mock.done(done);
} catch (exception) {
done(exception);
}
}
};
event = require('./example-event.json');
expected = new Error('expected');
mock.mock(lambda).expect('handleRecord')
.willReject(expected);
lambda.handler(event, context);
});
});
});