aws-cdk
Version:
CDK Toolkit, the command line tool for CDK apps
33 lines • 4.88 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const bootstrap_environment_1 = require("../lib/api/bootstrap/bootstrap-environment");
const cli_1 = require("../lib/cli/cli");
beforeEach(() => {
jest.clearAllMocks();
});
describe('cdk bootstrap', () => {
const bootstrapEnvironmentMock = jest.spyOn(bootstrap_environment_1.Bootstrapper.prototype, 'bootstrapEnvironment');
test('will bootstrap the a provided environment', async () => {
bootstrapEnvironmentMock.mockResolvedValueOnce({
noOp: false,
outputs: {},
type: 'did-deploy-stack',
stackArn: 'fake-arn',
});
await (0, cli_1.exec)(['bootstrap', 'aws://123456789012/us-east-1']);
expect(bootstrapEnvironmentMock).toHaveBeenCalledTimes(1);
expect(bootstrapEnvironmentMock).toHaveBeenCalledWith({
name: 'aws://123456789012/us-east-1',
account: '123456789012',
region: 'us-east-1',
}, expect.anything(), expect.anything());
});
});
describe('cdk bootstrap --show-template', () => {
const stdoutSpy = jest.spyOn(process.stdout, 'write').mockImplementation(() => { return true; });
test('prints the default bootstrap template', async () => {
await (0, cli_1.exec)(['bootstrap', '--show-template']);
expect(stdoutSpy).toHaveBeenCalledWith(expect.stringContaining('BootstrapVersion'));
});
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJib290c3RyYXAudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHNGQUEwRTtBQUMxRSx3Q0FBc0M7QUFFdEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtJQUNkLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztBQUN2QixDQUFDLENBQUMsQ0FBQztBQUVILFFBQVEsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFO0lBQzdCLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQ0FBWSxDQUFDLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO0lBRTVGLElBQUksQ0FBQywyQ0FBMkMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUMzRCx3QkFBd0IsQ0FBQyxxQkFBcUIsQ0FBQztZQUM3QyxJQUFJLEVBQUUsS0FBSztZQUNYLE9BQU8sRUFBRSxFQUFFO1lBQ1gsSUFBSSxFQUFFLGtCQUFrQjtZQUN4QixRQUFRLEVBQUUsVUFBVTtTQUNyQixDQUFDLENBQUM7UUFFSCxNQUFNLElBQUEsVUFBSSxFQUFDLENBQUMsV0FBVyxFQUFFLDhCQUE4QixDQUFDLENBQUMsQ0FBQztRQUMxRCxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRCxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQztZQUNwRCxJQUFJLEVBQUUsOEJBQThCO1lBQ3BDLE9BQU8sRUFBRSxjQUFjO1lBQ3ZCLE1BQU0sRUFBRSxXQUFXO1NBQ3BCLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUM7QUFFSCxRQUFRLENBQUMsK0JBQStCLEVBQUUsR0FBRyxFQUFFO0lBQzdDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsR0FBRyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWpHLElBQUksQ0FBQyx1Q0FBdUMsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN2RCxNQUFNLElBQUEsVUFBSSxFQUFDLENBQUMsV0FBVyxFQUFFLGlCQUFpQixDQUFDLENBQUMsQ0FBQztRQUM3QyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQztJQUN0RixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vdHN0cmFwcGVyIH0gZnJvbSAnLi4vbGliL2FwaS9ib290c3RyYXAvYm9vdHN0cmFwLWVudmlyb25tZW50JztcbmltcG9ydCB7IGV4ZWMgfSBmcm9tICcuLi9saWIvY2xpL2NsaSc7XG5cbmJlZm9yZUVhY2goKCkgPT4ge1xuICBqZXN0LmNsZWFyQWxsTW9ja3MoKTtcbn0pO1xuXG5kZXNjcmliZSgnY2RrIGJvb3RzdHJhcCcsICgpID0+IHtcbiAgY29uc3QgYm9vdHN0cmFwRW52aXJvbm1lbnRNb2NrID0gamVzdC5zcHlPbihCb290c3RyYXBwZXIucHJvdG90eXBlLCAnYm9vdHN0cmFwRW52aXJvbm1lbnQnKTtcblxuICB0ZXN0KCd3aWxsIGJvb3RzdHJhcCB0aGUgYSBwcm92aWRlZCBlbnZpcm9ubWVudCcsIGFzeW5jICgpID0+IHtcbiAgICBib290c3RyYXBFbnZpcm9ubWVudE1vY2subW9ja1Jlc29sdmVkVmFsdWVPbmNlKHtcbiAgICAgIG5vT3A6IGZhbHNlLFxuICAgICAgb3V0cHV0czoge30sXG4gICAgICB0eXBlOiAnZGlkLWRlcGxveS1zdGFjaycsXG4gICAgICBzdGFja0FybjogJ2Zha2UtYXJuJyxcbiAgICB9KTtcblxuICAgIGF3YWl0IGV4ZWMoWydib290c3RyYXAnLCAnYXdzOi8vMTIzNDU2Nzg5MDEyL3VzLWVhc3QtMSddKTtcbiAgICBleHBlY3QoYm9vdHN0cmFwRW52aXJvbm1lbnRNb2NrKS50b0hhdmVCZWVuQ2FsbGVkVGltZXMoMSk7XG4gICAgZXhwZWN0KGJvb3RzdHJhcEVudmlyb25tZW50TW9jaykudG9IYXZlQmVlbkNhbGxlZFdpdGgoe1xuICAgICAgbmFtZTogJ2F3czovLzEyMzQ1Njc4OTAxMi91cy1lYXN0LTEnLFxuICAgICAgYWNjb3VudDogJzEyMzQ1Njc4OTAxMicsXG4gICAgICByZWdpb246ICd1cy1lYXN0LTEnLFxuICAgIH0sIGV4cGVjdC5hbnl0aGluZygpLCBleHBlY3QuYW55dGhpbmcoKSk7XG4gIH0pO1xufSk7XG5cbmRlc2NyaWJlKCdjZGsgYm9vdHN0cmFwIC0tc2hvdy10ZW1wbGF0ZScsICgpID0+IHtcbiAgY29uc3Qgc3Rkb3V0U3B5ID0gamVzdC5zcHlPbihwcm9jZXNzLnN0ZG91dCwgJ3dyaXRlJykubW9ja0ltcGxlbWVudGF0aW9uKCgpID0+IHsgcmV0dXJuIHRydWU7IH0pO1xuXG4gIHRlc3QoJ3ByaW50cyB0aGUgZGVmYXVsdCBib290c3RyYXAgdGVtcGxhdGUnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgZXhlYyhbJ2Jvb3RzdHJhcCcsICctLXNob3ctdGVtcGxhdGUnXSk7XG4gICAgZXhwZWN0KHN0ZG91dFNweSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoZXhwZWN0LnN0cmluZ0NvbnRhaW5pbmcoJ0Jvb3RzdHJhcFZlcnNpb24nKSk7XG4gIH0pO1xufSk7XG4iXX0=