@aws-cdk-testing/cli-integ
Version:
Integration tests for the AWS CDK CLI
39 lines • 5.91 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const client_cloudformation_1 = require("@aws-sdk/client-cloudformation");
const client_sns_1 = require("@aws-sdk/client-sns");
const lib_1 = require("../../../lib");
(0, lib_1.integTest)('deploy deletes ALL notification arns when empty array is passed', (0, lib_1.withDefaultFixture)(async (fixture) => {
const topicName = `${fixture.stackNamePrefix}-topic`;
const response = await fixture.aws.sns.send(new client_sns_1.CreateTopicCommand({ Name: topicName }));
const topicArn = response.TopicArn;
try {
await fixture.cdkDeploy('notification-arns', {
modEnv: {
INTEG_NOTIFICATION_ARNS: topicArn,
},
});
// make sure the arn was added
let describeResponse = await fixture.aws.cloudFormation.send(new client_cloudformation_1.DescribeStacksCommand({
StackName: fixture.fullStackName('notification-arns'),
}));
expect(describeResponse.Stacks?.[0].NotificationARNs).toEqual([topicArn]);
// deploy again with empty array
await fixture.cdkDeploy('notification-arns', {
modEnv: {
INTEG_NOTIFICATION_ARNS: '',
},
});
// make sure the arn was deleted
describeResponse = await fixture.aws.cloudFormation.send(new client_cloudformation_1.DescribeStacksCommand({
StackName: fixture.fullStackName('notification-arns'),
}));
expect(describeResponse.Stacks?.[0].NotificationARNs).toEqual([]);
}
finally {
await fixture.aws.sns.send(new client_sns_1.DeleteTopicCommand({
TopicArn: topicArn,
}));
}
}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWRlcGxveS1kZWxldGVzLWFsbC1ub3RpZmljYXRpb24tYXJucy13aGVuLWVtcHR5LWFycmF5LWlzLXBhc3NlZC5pbnRlZ3Rlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjZGstZGVwbG95LWRlbGV0ZXMtYWxsLW5vdGlmaWNhdGlvbi1hcm5zLXdoZW4tZW1wdHktYXJyYXktaXMtcGFzc2VkLmludGVndGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBFQUF1RTtBQUN2RSxvREFBNkU7QUFDN0Usc0NBQTZEO0FBRTdELElBQUEsZUFBUyxFQUFDLGlFQUFpRSxFQUFFLElBQUEsd0JBQWtCLEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQ2hILE1BQU0sU0FBUyxHQUFHLEdBQUcsT0FBTyxDQUFDLGVBQWUsUUFBUSxDQUFDO0lBRXJELE1BQU0sUUFBUSxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksK0JBQWtCLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxRQUFTLENBQUM7SUFFcEMsSUFBSSxDQUFDO1FBQ0gsTUFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLG1CQUFtQixFQUFFO1lBQzNDLE1BQU0sRUFBRTtnQkFDTix1QkFBdUIsRUFBRSxRQUFRO2FBQ2xDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsOEJBQThCO1FBQzlCLElBQUksZ0JBQWdCLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQzFELElBQUksNkNBQXFCLENBQUM7WUFDeEIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUM7U0FDdEQsQ0FBQyxDQUNILENBQUM7UUFDRixNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRTFFLGdDQUFnQztRQUNoQyxNQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsbUJBQW1CLEVBQUU7WUFDM0MsTUFBTSxFQUFFO2dCQUNOLHVCQUF1QixFQUFFLEVBQUU7YUFDNUI7U0FDRixDQUFDLENBQUM7UUFFSCxnQ0FBZ0M7UUFDaEMsZ0JBQWdCLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQ3RELElBQUksNkNBQXFCLENBQUM7WUFDeEIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUM7U0FDdEQsQ0FBQyxDQUNILENBQUM7UUFDRixNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQztZQUFTLENBQUM7UUFDVCxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FDeEIsSUFBSSwrQkFBa0IsQ0FBQztZQUNyQixRQUFRLEVBQUUsUUFBUTtTQUNuQixDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzY3JpYmVTdGFja3NDb21tYW5kIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWNsb3VkZm9ybWF0aW9uJztcbmltcG9ydCB7IENyZWF0ZVRvcGljQ29tbWFuZCwgRGVsZXRlVG9waWNDb21tYW5kIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LXNucyc7XG5pbXBvcnQgeyBpbnRlZ1Rlc3QsIHdpdGhEZWZhdWx0Rml4dHVyZSB9IGZyb20gJy4uLy4uLy4uL2xpYic7XG5cbmludGVnVGVzdCgnZGVwbG95IGRlbGV0ZXMgQUxMIG5vdGlmaWNhdGlvbiBhcm5zIHdoZW4gZW1wdHkgYXJyYXkgaXMgcGFzc2VkJywgd2l0aERlZmF1bHRGaXh0dXJlKGFzeW5jIChmaXh0dXJlKSA9PiB7XG4gIGNvbnN0IHRvcGljTmFtZSA9IGAke2ZpeHR1cmUuc3RhY2tOYW1lUHJlZml4fS10b3BpY2A7XG5cbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmaXh0dXJlLmF3cy5zbnMuc2VuZChuZXcgQ3JlYXRlVG9waWNDb21tYW5kKHsgTmFtZTogdG9waWNOYW1lIH0pKTtcbiAgY29uc3QgdG9waWNBcm4gPSByZXNwb25zZS5Ub3BpY0FybiE7XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCBmaXh0dXJlLmNka0RlcGxveSgnbm90aWZpY2F0aW9uLWFybnMnLCB7XG4gICAgICBtb2RFbnY6IHtcbiAgICAgICAgSU5URUdfTk9USUZJQ0FUSU9OX0FSTlM6IHRvcGljQXJuLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIG1ha2Ugc3VyZSB0aGUgYXJuIHdhcyBhZGRlZFxuICAgIGxldCBkZXNjcmliZVJlc3BvbnNlID0gYXdhaXQgZml4dHVyZS5hd3MuY2xvdWRGb3JtYXRpb24uc2VuZChcbiAgICAgIG5ldyBEZXNjcmliZVN0YWNrc0NvbW1hbmQoe1xuICAgICAgICBTdGFja05hbWU6IGZpeHR1cmUuZnVsbFN0YWNrTmFtZSgnbm90aWZpY2F0aW9uLWFybnMnKSxcbiAgICAgIH0pLFxuICAgICk7XG4gICAgZXhwZWN0KGRlc2NyaWJlUmVzcG9uc2UuU3RhY2tzPy5bMF0uTm90aWZpY2F0aW9uQVJOcykudG9FcXVhbChbdG9waWNBcm5dKTtcblxuICAgIC8vIGRlcGxveSBhZ2FpbiB3aXRoIGVtcHR5IGFycmF5XG4gICAgYXdhaXQgZml4dHVyZS5jZGtEZXBsb3koJ25vdGlmaWNhdGlvbi1hcm5zJywge1xuICAgICAgbW9kRW52OiB7XG4gICAgICAgIElOVEVHX05PVElGSUNBVElPTl9BUk5TOiAnJyxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICAvLyBtYWtlIHN1cmUgdGhlIGFybiB3YXMgZGVsZXRlZFxuICAgIGRlc2NyaWJlUmVzcG9uc2UgPSBhd2FpdCBmaXh0dXJlLmF3cy5jbG91ZEZvcm1hdGlvbi5zZW5kKFxuICAgICAgbmV3IERlc2NyaWJlU3RhY2tzQ29tbWFuZCh7XG4gICAgICAgIFN0YWNrTmFtZTogZml4dHVyZS5mdWxsU3RhY2tOYW1lKCdub3RpZmljYXRpb24tYXJucycpLFxuICAgICAgfSksXG4gICAgKTtcbiAgICBleHBlY3QoZGVzY3JpYmVSZXNwb25zZS5TdGFja3M/LlswXS5Ob3RpZmljYXRpb25BUk5zKS50b0VxdWFsKFtdKTtcbiAgfSBmaW5hbGx5IHtcbiAgICBhd2FpdCBmaXh0dXJlLmF3cy5zbnMuc2VuZChcbiAgICAgIG5ldyBEZWxldGVUb3BpY0NvbW1hbmQoe1xuICAgICAgICBUb3BpY0FybjogdG9waWNBcm4sXG4gICAgICB9KSxcbiAgICApO1xuICB9XG59KSk7XG5cbiJdfQ==