UNPKG

@aws-cdk-testing/cli-integ

Version:

Integration tests for the AWS CDK CLI

29 lines 4.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const lib_1 = require("../../../lib"); const regions_1 = require("../../../lib/regions"); (0, lib_1.integTest)('cdk refactor - dry run - detects refactoring changes and prints the result', (0, lib_1.withSpecificFixture)('refactoring', async (fixture) => { // First, deploy the stacks await fixture.cdkDeploy('bucket-stack'); await fixture.cdkDeploy('basic', { modEnv: { BASIC_QUEUE_LOGICAL_ID: 'OldName', }, }); // Then see if the refactoring tool detects the change const stdErr = await fixture.cdkRefactor({ options: ['--dry-run', '--unstable=refactor'], allowErrExit: true, // Making sure the synthesized stack has a queue with // the new name so that a refactor is detected modEnv: { BASIC_QUEUE_LOGICAL_ID: 'NewName', }, }); expect(stdErr).toContain('The following resources were moved or renamed:'); expect(removeColor(stdErr)).toMatch(/│ AWS::SQS::Queue │ .*\/OldName\/Resource │ .*\/NewName\/Resource │/); }, { aws: { regions: regions_1.STACK_REFACTORING_REGIONS } })); function removeColor(str) { return str.replace(/\x1B[[(?);]{0,2}(;?\d)*./g, ''); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXJlZmFjdG9yLWRyeS1ydW4tZGV0ZWN0LWNoYW5nZXMuaW50ZWd0ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2RrLXJlZmFjdG9yLWRyeS1ydW4tZGV0ZWN0LWNoYW5nZXMuaW50ZWd0ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0NBQThEO0FBQzlELGtEQUFpRTtBQUVqRSxJQUFBLGVBQVMsRUFDUCw0RUFBNEUsRUFDNUUsSUFBQSx5QkFBbUIsRUFBQyxhQUFhLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQ25ELDJCQUEyQjtJQUMzQixNQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDeEMsTUFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRTtRQUMvQixNQUFNLEVBQUU7WUFDTixzQkFBc0IsRUFBRSxTQUFTO1NBQ2xDO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsc0RBQXNEO0lBQ3RELE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUN2QyxPQUFPLEVBQUUsQ0FBQyxXQUFXLEVBQUUscUJBQXFCLENBQUM7UUFDN0MsWUFBWSxFQUFFLElBQUk7UUFDbEIscURBQXFEO1FBQ3JELDhDQUE4QztRQUM5QyxNQUFNLEVBQUU7WUFDTixzQkFBc0IsRUFBRSxTQUFTO1NBQ2xDO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO0lBQzNFLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMscUVBQXFFLENBQUMsQ0FBQztBQUM3RyxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsbUNBQXlCLEVBQUUsRUFBRSxDQUFDLENBQ3BELENBQUM7QUFFRixTQUFTLFdBQVcsQ0FBQyxHQUFXO0lBQzlCLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUN0RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW50ZWdUZXN0LCB3aXRoU3BlY2lmaWNGaXh0dXJlIH0gZnJvbSAnLi4vLi4vLi4vbGliJztcbmltcG9ydCB7IFNUQUNLX1JFRkFDVE9SSU5HX1JFR0lPTlMgfSBmcm9tICcuLi8uLi8uLi9saWIvcmVnaW9ucyc7XG5cbmludGVnVGVzdChcbiAgJ2NkayByZWZhY3RvciAtIGRyeSBydW4gLSBkZXRlY3RzIHJlZmFjdG9yaW5nIGNoYW5nZXMgYW5kIHByaW50cyB0aGUgcmVzdWx0JyxcbiAgd2l0aFNwZWNpZmljRml4dHVyZSgncmVmYWN0b3JpbmcnLCBhc3luYyAoZml4dHVyZSkgPT4ge1xuICAgIC8vIEZpcnN0LCBkZXBsb3kgdGhlIHN0YWNrc1xuICAgIGF3YWl0IGZpeHR1cmUuY2RrRGVwbG95KCdidWNrZXQtc3RhY2snKTtcbiAgICBhd2FpdCBmaXh0dXJlLmNka0RlcGxveSgnYmFzaWMnLCB7XG4gICAgICBtb2RFbnY6IHtcbiAgICAgICAgQkFTSUNfUVVFVUVfTE9HSUNBTF9JRDogJ09sZE5hbWUnLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIFRoZW4gc2VlIGlmIHRoZSByZWZhY3RvcmluZyB0b29sIGRldGVjdHMgdGhlIGNoYW5nZVxuICAgIGNvbnN0IHN0ZEVyciA9IGF3YWl0IGZpeHR1cmUuY2RrUmVmYWN0b3Ioe1xuICAgICAgb3B0aW9uczogWyctLWRyeS1ydW4nLCAnLS11bnN0YWJsZT1yZWZhY3RvciddLFxuICAgICAgYWxsb3dFcnJFeGl0OiB0cnVlLFxuICAgICAgLy8gTWFraW5nIHN1cmUgdGhlIHN5bnRoZXNpemVkIHN0YWNrIGhhcyBhIHF1ZXVlIHdpdGhcbiAgICAgIC8vIHRoZSBuZXcgbmFtZSBzbyB0aGF0IGEgcmVmYWN0b3IgaXMgZGV0ZWN0ZWRcbiAgICAgIG1vZEVudjoge1xuICAgICAgICBCQVNJQ19RVUVVRV9MT0dJQ0FMX0lEOiAnTmV3TmFtZScsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgZXhwZWN0KHN0ZEVycikudG9Db250YWluKCdUaGUgZm9sbG93aW5nIHJlc291cmNlcyB3ZXJlIG1vdmVkIG9yIHJlbmFtZWQ6Jyk7XG4gICAgZXhwZWN0KHJlbW92ZUNvbG9yKHN0ZEVycikpLnRvTWF0Y2goL+KUgiBBV1M6OlNRUzo6UXVldWUg4pSCIC4qXFwvT2xkTmFtZVxcL1Jlc291cmNlIOKUgiAuKlxcL05ld05hbWVcXC9SZXNvdXJjZSDilIIvKTtcbiAgfSwgeyBhd3M6IHsgcmVnaW9uczogU1RBQ0tfUkVGQUNUT1JJTkdfUkVHSU9OUyB9IH0pLFxuKTtcblxuZnVuY3Rpb24gcmVtb3ZlQ29sb3Ioc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gc3RyLnJlcGxhY2UoL1xceDFCW1soPyk7XXswLDJ9KDs/XFxkKSouL2csICcnKTtcbn1cbiJdfQ==