UNPKG

briareus

Version:

Briareus assists with Feature Branch deploys to ECS

53 lines (43 loc) 2.09 kB
'use strict' const expect = require('expect.js'); const AWS = require('aws-sdk-mock'); const helpers = require('../../helpers'); const CreateDnsRecordsEndpoint = require('../../../lib/service/actions/create-dns-records-endpoint'); describe('Action:CreateDnsRecordsEndpoint', function () { afterEach(helpers.afterEach); it('should create DNS records to verify ownership of ACM certificate', function (done) { let payload = { hostedZoneId: 'zone-1', endpoint: { host: 'feature.branch.bugcrowd.engineering' }, alb: { dnsName: 'alb.aws.amazon.com', canonicalHostedZoneId: 'alb-zone-id' } }; AWS.mock('Route53', 'changeResourceRecordSets', function (params, cb) { expect(params.HostedZoneId).to.equal(payload.hostedZoneId); expect(params.ChangeBatch.Changes.length).to.equal(2); const changeSet1 = params.ChangeBatch.Changes[0]; expect(changeSet1.Action).to.equal("UPSERT"); expect(changeSet1.ResourceRecordSet.Name).to.equal(payload.endpoint.host); expect(changeSet1.ResourceRecordSet.Type).to.equal('A'); expect(changeSet1.ResourceRecordSet.AliasTarget.DNSName).to.equal(payload.alb.dnsName); expect(changeSet1.ResourceRecordSet.AliasTarget.HostedZoneId).to.equal(payload.alb.canonicalHostedZoneId); const changeSet2 = params.ChangeBatch.Changes[1]; expect(changeSet2.Action).to.equal("UPSERT"); expect(changeSet2.ResourceRecordSet.Name).to.equal('*.' + payload.endpoint.host); expect(changeSet2.ResourceRecordSet.Type).to.equal('A'); expect(changeSet2.ResourceRecordSet.AliasTarget.DNSName).to.equal(payload.alb.dnsName); expect(changeSet2.ResourceRecordSet.AliasTarget.HostedZoneId).to.equal(payload.alb.canonicalHostedZoneId); cb(null, {}); }); CreateDnsRecordsEndpoint({}, payload, (err, patches) => { expect(err).to.equal(null); expect(patches[0].value.Name).to.equal(payload.endpoint.host); expect(patches[1].value.Name).to.equal('*.' + payload.endpoint.host); done(); }) }); });