UNPKG

aws-cdk

Version:

CDK Toolkit, the command line tool for CDK apps

54 lines 7.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /* eslint-disable import/order */ const context_1 = require("../../lib/api/context"); const settings_1 = require("../../lib/api/settings"); test('can delete values from Context object', () => { // GIVEN const settings1 = new settings_1.Settings({ foo: 'bar' }); const settings2 = new settings_1.Settings({ boo: 'baz' }); const context = new context_1.Context({ bag: settings1 }, { bag: settings2 }); // WHEN context.unset('foo'); // THEN expect(context.all).toEqual({ boo: 'baz' }); expect(settings1.all).toEqual({}); expect(settings2.all).toEqual({ boo: 'baz' }); }); test('can set values in Context object', () => { // GIVEN const settings1 = new settings_1.Settings(); const settings2 = new settings_1.Settings(); const context = new context_1.Context({ bag: settings1 }, { bag: settings2 }); // WHEN context.set('foo', 'bar'); // THEN expect(context.all).toEqual({ foo: 'bar' }); expect(settings1.all).toEqual({ foo: 'bar' }); expect(settings2.all).toEqual({}); }); test('can set values in Context object if first is immutable', () => { // GIVEN const settings1 = new settings_1.Settings(); const settings2 = new settings_1.Settings(); const context = new context_1.Context({ bag: settings1.makeReadOnly() }, { bag: settings2 }); // WHEN context.set('foo', 'bar'); // THEN expect(context.all).toEqual({ foo: 'bar' }); expect(settings1.all).toEqual({}); expect(settings2.all).toEqual({ foo: 'bar' }); }); test('can clear all values in all objects', () => { // GIVEN const settings1 = new settings_1.Settings({ foo: 'bar' }); const settings2 = new settings_1.Settings({ foo: 'snar', boo: 'gar' }); const context = new context_1.Context({ bag: settings1 }, { bag: settings2 }); // WHEN context.clear(); // THEN expect(context.all).toEqual({}); expect(settings1.all).toEqual({}); expect(settings2.all).toEqual({}); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNldHRpbmdzLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFDakMsbURBQWdEO0FBQ2hELHFEQUFrRDtBQUVsRCxJQUFJLENBQUMsdUNBQXVDLEVBQUUsR0FBRyxFQUFFO0lBQ2pELFFBQVE7SUFDUixNQUFNLFNBQVMsR0FBRyxJQUFJLG1CQUFRLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMvQyxNQUFNLFNBQVMsR0FBRyxJQUFJLG1CQUFRLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMvQyxNQUFNLE9BQU8sR0FBRyxJQUFJLGlCQUFPLENBQUMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUVwRSxPQUFPO0lBQ1AsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVyQixPQUFPO0lBQ1AsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUM1QyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNsQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0FBQ2hELENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLGtDQUFrQyxFQUFFLEdBQUcsRUFBRTtJQUM1QyxRQUFRO0lBQ1IsTUFBTSxTQUFTLEdBQUcsSUFBSSxtQkFBUSxFQUFFLENBQUM7SUFDakMsTUFBTSxTQUFTLEdBQUcsSUFBSSxtQkFBUSxFQUFFLENBQUM7SUFDakMsTUFBTSxPQUFPLEdBQUcsSUFBSSxpQkFBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFFcEUsT0FBTztJQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRTFCLE9BQU87SUFDUCxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDOUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDcEMsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsd0RBQXdELEVBQUUsR0FBRyxFQUFFO0lBQ2xFLFFBQVE7SUFDUixNQUFNLFNBQVMsR0FBRyxJQUFJLG1CQUFRLEVBQUUsQ0FBQztJQUNqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLG1CQUFRLEVBQUUsQ0FBQztJQUNqQyxNQUFNLE9BQU8sR0FBRyxJQUFJLGlCQUFPLENBQUMsRUFBRSxHQUFHLEVBQUUsU0FBUyxDQUFDLFlBQVksRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUVuRixPQUFPO0lBQ1AsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFMUIsT0FBTztJQUNQLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDNUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRyxDQUFDLENBQUM7SUFDbkMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztBQUNoRCxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyxxQ0FBcUMsRUFBRSxHQUFHLEVBQUU7SUFDL0MsUUFBUTtJQUNSLE1BQU0sU0FBUyxHQUFHLElBQUksbUJBQVEsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sU0FBUyxHQUFHLElBQUksbUJBQVEsQ0FBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDNUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxpQkFBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFFcEUsT0FBTztJQUNQLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVoQixPQUFPO0lBQ1AsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRyxDQUFDLENBQUM7SUFDbkMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDcEMsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBpbXBvcnQvb3JkZXIgKi9cbmltcG9ydCB7IENvbnRleHQgfSBmcm9tICcuLi8uLi9saWIvYXBpL2NvbnRleHQnO1xuaW1wb3J0IHsgU2V0dGluZ3MgfSBmcm9tICcuLi8uLi9saWIvYXBpL3NldHRpbmdzJztcblxudGVzdCgnY2FuIGRlbGV0ZSB2YWx1ZXMgZnJvbSBDb250ZXh0IG9iamVjdCcsICgpID0+IHtcbiAgLy8gR0lWRU5cbiAgY29uc3Qgc2V0dGluZ3MxID0gbmV3IFNldHRpbmdzKHsgZm9vOiAnYmFyJyB9KTtcbiAgY29uc3Qgc2V0dGluZ3MyID0gbmV3IFNldHRpbmdzKHsgYm9vOiAnYmF6JyB9KTtcbiAgY29uc3QgY29udGV4dCA9IG5ldyBDb250ZXh0KHsgYmFnOiBzZXR0aW5nczEgfSwgeyBiYWc6IHNldHRpbmdzMiB9KTtcblxuICAvLyBXSEVOXG4gIGNvbnRleHQudW5zZXQoJ2ZvbycpO1xuXG4gIC8vIFRIRU5cbiAgZXhwZWN0KGNvbnRleHQuYWxsKS50b0VxdWFsKHsgYm9vOiAnYmF6JyB9KTtcbiAgZXhwZWN0KHNldHRpbmdzMS5hbGwpLnRvRXF1YWwoe30pO1xuICBleHBlY3Qoc2V0dGluZ3MyLmFsbCkudG9FcXVhbCh7IGJvbzogJ2JheicgfSk7XG59KTtcblxudGVzdCgnY2FuIHNldCB2YWx1ZXMgaW4gQ29udGV4dCBvYmplY3QnLCAoKSA9PiB7XG4gIC8vIEdJVkVOXG4gIGNvbnN0IHNldHRpbmdzMSA9IG5ldyBTZXR0aW5ncygpO1xuICBjb25zdCBzZXR0aW5nczIgPSBuZXcgU2V0dGluZ3MoKTtcbiAgY29uc3QgY29udGV4dCA9IG5ldyBDb250ZXh0KHsgYmFnOiBzZXR0aW5nczEgfSwgeyBiYWc6IHNldHRpbmdzMiB9KTtcblxuICAvLyBXSEVOXG4gIGNvbnRleHQuc2V0KCdmb28nLCAnYmFyJyk7XG5cbiAgLy8gVEhFTlxuICBleHBlY3QoY29udGV4dC5hbGwpLnRvRXF1YWwoeyBmb286ICdiYXInIH0pO1xuICBleHBlY3Qoc2V0dGluZ3MxLmFsbCkudG9FcXVhbCh7IGZvbzogJ2JhcicgfSk7XG4gIGV4cGVjdChzZXR0aW5nczIuYWxsKS50b0VxdWFsKHt9KTtcbn0pO1xuXG50ZXN0KCdjYW4gc2V0IHZhbHVlcyBpbiBDb250ZXh0IG9iamVjdCBpZiBmaXJzdCBpcyBpbW11dGFibGUnLCAoKSA9PiB7XG4gIC8vIEdJVkVOXG4gIGNvbnN0IHNldHRpbmdzMSA9IG5ldyBTZXR0aW5ncygpO1xuICBjb25zdCBzZXR0aW5nczIgPSBuZXcgU2V0dGluZ3MoKTtcbiAgY29uc3QgY29udGV4dCA9IG5ldyBDb250ZXh0KHsgYmFnOiBzZXR0aW5nczEubWFrZVJlYWRPbmx5KCkgfSwgeyBiYWc6IHNldHRpbmdzMiB9KTtcblxuICAvLyBXSEVOXG4gIGNvbnRleHQuc2V0KCdmb28nLCAnYmFyJyk7XG5cbiAgLy8gVEhFTlxuICBleHBlY3QoY29udGV4dC5hbGwpLnRvRXF1YWwoeyBmb286ICdiYXInIH0pO1xuICBleHBlY3Qoc2V0dGluZ3MxLmFsbCkudG9FcXVhbCh7IH0pO1xuICBleHBlY3Qoc2V0dGluZ3MyLmFsbCkudG9FcXVhbCh7IGZvbzogJ2JhcicgfSk7XG59KTtcblxudGVzdCgnY2FuIGNsZWFyIGFsbCB2YWx1ZXMgaW4gYWxsIG9iamVjdHMnLCAoKSA9PiB7XG4gIC8vIEdJVkVOXG4gIGNvbnN0IHNldHRpbmdzMSA9IG5ldyBTZXR0aW5ncyh7IGZvbzogJ2JhcicgfSk7XG4gIGNvbnN0IHNldHRpbmdzMiA9IG5ldyBTZXR0aW5ncyh7IGZvbzogJ3NuYXInLCBib286ICdnYXInIH0pO1xuICBjb25zdCBjb250ZXh0ID0gbmV3IENvbnRleHQoeyBiYWc6IHNldHRpbmdzMSB9LCB7IGJhZzogc2V0dGluZ3MyIH0pO1xuXG4gIC8vIFdIRU5cbiAgY29udGV4dC5jbGVhcigpO1xuXG4gIC8vIFRIRU5cbiAgZXhwZWN0KGNvbnRleHQuYWxsKS50b0VxdWFsKHt9KTtcbiAgZXhwZWN0KHNldHRpbmdzMS5hbGwpLnRvRXF1YWwoeyB9KTtcbiAgZXhwZWN0KHNldHRpbmdzMi5hbGwpLnRvRXF1YWwoe30pO1xufSk7XG4iXX0=