briareus
Version:
Briareus assists with Feature Branch deploys to ECS
65 lines (50 loc) • 1.63 kB
JavaScript
const expect = require('expect.js');
const AWS = require('aws-sdk-mock');
const helpers = require('../../helpers');
const RemoveAcmCertificateFromAlbListener = require('../../../lib/service/actions/remove-acm-certificate-from-alb-listener');
describe('Action:RemoveAcmCertificateFromAlbListener', function () {
afterEach(helpers.afterEach);
it('should remove ACM Certificate from ALB Listener', function (done) {
this.timeout(12000);
let certificateArn = 'arn:cert:1';
let listenerArn = 'arn:listener:1';
let describeListenerCalls = 0;
let payload = {
assets: {
acmCertificate: {
arn: certificateArn
}
},
alb: {
listenerArn: listenerArn
}
};
AWS.mock('ELBv2', 'removeListenerCertificates', function (params, cb) {
expect(params.Certificates[0].CertificateArn).to.equal(certificateArn);
expect(params.ListenerArn).to.equal(listenerArn);
cb(null, {});
});
AWS.mock('ELBv2', 'describeListenerCertificates', function (params, cb) {
expect(params.ListenerArn).to.equal(listenerArn);
describeListenerCalls++;
if (describeListenerCalls === 1) {
return cb(null, {
Certificates: [
{ CertificateArn: certificateArn }
]
});
};
if (describeListenerCalls === 2) {
return cb(null, {
Certificates: []
});
};
throw Error('should not get here');
});
RemoveAcmCertificateFromAlbListener({}, payload, (err, patches) => {
expect(err).to.equal(null);
done();
})
});
});