UNPKG

aws-cdk

Version:

CDK Toolkit, the command line tool for CDK apps

35 lines 4.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const credential_plugins_1 = require("../../lib/api/aws-auth/credential-plugins"); const plugin_1 = require("../../lib/api/plugin"); const mode_1 = require("../../lib/api/plugin/mode"); test('returns credential from plugin', async () => { // GIVEN const creds = { accessKeyId: 'aaa', secretAccessKey: 'bbb', getPromise: () => Promise.resolve(), }; const host = plugin_1.PluginHost.instance; host.registerCredentialProviderSource({ name: 'Fake', canProvideCredentials(_accountId) { return Promise.resolve(true); }, isAvailable() { return Promise.resolve(true); }, getProvider(_accountId, _mode) { return Promise.resolve(creds); }, }); const plugins = new credential_plugins_1.CredentialPlugins(); // WHEN const pluginCredentials = await plugins.fetchCredentialsFor('aaa', mode_1.Mode.ForReading); // THEN await expect(pluginCredentials?.credentials()).resolves.toEqual(expect.objectContaining({ accessKeyId: 'aaa', secretAccessKey: 'bbb', })); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGVudGlhbC1wbHVnaW5zLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjcmVkZW50aWFsLXBsdWdpbnMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLGtGQUE4RTtBQUM5RSxpREFBa0Q7QUFDbEQsb0RBQWlEO0FBRWpELElBQUksQ0FBQyxnQ0FBZ0MsRUFBRSxLQUFLLElBQUksRUFBRTtJQUNoRCxRQUFRO0lBQ1IsTUFBTSxLQUFLLEdBQUc7UUFDWixXQUFXLEVBQUUsS0FBSztRQUNsQixlQUFlLEVBQUUsS0FBSztRQUN0QixVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtLQUNDLENBQUM7SUFDdkMsTUFBTSxJQUFJLEdBQUcsbUJBQVUsQ0FBQyxRQUFRLENBQUM7SUFFakMsSUFBSSxDQUFDLGdDQUFnQyxDQUFDO1FBQ3BDLElBQUksRUFBRSxNQUFNO1FBRVoscUJBQXFCLENBQUMsVUFBa0I7WUFDdEMsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFFRCxXQUFXO1lBQ1QsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFFRCxXQUFXLENBQUMsVUFBa0IsRUFBRSxLQUFXO1lBQ3pDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoQyxDQUFDO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxPQUFPLEdBQUcsSUFBSSxzQ0FBaUIsRUFBRSxDQUFDO0lBRXhDLE9BQU87SUFDUCxNQUFNLGlCQUFpQixHQUFHLE1BQU0sT0FBTyxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxXQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFcEYsT0FBTztJQUNQLE1BQU0sTUFBTSxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7UUFDdEYsV0FBVyxFQUFFLEtBQUs7UUFDbEIsZUFBZSxFQUFFLEtBQUs7S0FDdkIsQ0FBQyxDQUFDLENBQUM7QUFDTixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUGx1Z2luUHJvdmlkZXJSZXN1bHQsIFNES3YyQ29tcGF0aWJsZUNyZWRlbnRpYWxzIH0gZnJvbSAnQGF3cy1jZGsvY2xpLXBsdWdpbi1jb250cmFjdCc7XG5pbXBvcnQgeyBDcmVkZW50aWFsUGx1Z2lucyB9IGZyb20gJy4uLy4uL2xpYi9hcGkvYXdzLWF1dGgvY3JlZGVudGlhbC1wbHVnaW5zJztcbmltcG9ydCB7IFBsdWdpbkhvc3QgfSBmcm9tICcuLi8uLi9saWIvYXBpL3BsdWdpbic7XG5pbXBvcnQgeyBNb2RlIH0gZnJvbSAnLi4vLi4vbGliL2FwaS9wbHVnaW4vbW9kZSc7XG5cbnRlc3QoJ3JldHVybnMgY3JlZGVudGlhbCBmcm9tIHBsdWdpbicsIGFzeW5jICgpID0+IHtcbiAgLy8gR0lWRU5cbiAgY29uc3QgY3JlZHMgPSB7XG4gICAgYWNjZXNzS2V5SWQ6ICdhYWEnLFxuICAgIHNlY3JldEFjY2Vzc0tleTogJ2JiYicsXG4gICAgZ2V0UHJvbWlzZTogKCkgPT4gUHJvbWlzZS5yZXNvbHZlKCksXG4gIH0gc2F0aXNmaWVzIFNES3YyQ29tcGF0aWJsZUNyZWRlbnRpYWxzO1xuICBjb25zdCBob3N0ID0gUGx1Z2luSG9zdC5pbnN0YW5jZTtcblxuICBob3N0LnJlZ2lzdGVyQ3JlZGVudGlhbFByb3ZpZGVyU291cmNlKHtcbiAgICBuYW1lOiAnRmFrZScsXG5cbiAgICBjYW5Qcm92aWRlQ3JlZGVudGlhbHMoX2FjY291bnRJZDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRydWUpO1xuICAgIH0sXG5cbiAgICBpc0F2YWlsYWJsZSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodHJ1ZSk7XG4gICAgfSxcblxuICAgIGdldFByb3ZpZGVyKF9hY2NvdW50SWQ6IHN0cmluZywgX21vZGU6IE1vZGUpOiBQcm9taXNlPFBsdWdpblByb3ZpZGVyUmVzdWx0PiB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGNyZWRzKTtcbiAgICB9LFxuICB9KTtcblxuICBjb25zdCBwbHVnaW5zID0gbmV3IENyZWRlbnRpYWxQbHVnaW5zKCk7XG5cbiAgLy8gV0hFTlxuICBjb25zdCBwbHVnaW5DcmVkZW50aWFscyA9IGF3YWl0IHBsdWdpbnMuZmV0Y2hDcmVkZW50aWFsc0ZvcignYWFhJywgTW9kZS5Gb3JSZWFkaW5nKTtcblxuICAvLyBUSEVOXG4gIGF3YWl0IGV4cGVjdChwbHVnaW5DcmVkZW50aWFscz8uY3JlZGVudGlhbHMoKSkucmVzb2x2ZXMudG9FcXVhbChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgYWNjZXNzS2V5SWQ6ICdhYWEnLFxuICAgIHNlY3JldEFjY2Vzc0tleTogJ2JiYicsXG4gIH0pKTtcbn0pO1xuIl19