From f2a41bf0bd7219ff85946e001b67a67f6aa3436d Mon Sep 17 00:00:00 2001 From: Mariusz Nowak Date: Wed, 4 Dec 2019 10:07:11 +0100 Subject: [PATCH] Improve tests --- lib/plugins/aws/invokeLocal/index.test.js | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/lib/plugins/aws/invokeLocal/index.test.js b/lib/plugins/aws/invokeLocal/index.test.js index 1cffadbcf..ff4232497 100644 --- a/lib/plugins/aws/invokeLocal/index.test.js +++ b/lib/plugins/aws/invokeLocal/index.test.js @@ -327,18 +327,31 @@ describe('AwsInvokeLocal', () => { expect(process.env.NODE_PATH).to.equal('/var/runtime:/var/task:/var/runtime/node_modules'); })); - it('it should set credential env vars', () => { - provider.cachedCredentials.accessKeyId = 'ID'; - provider.cachedCredentials.secretAccessKey = 'SECRET'; - provider.cachedCredentials.sessionToken = 'TOKEN'; + it('it should set credential env vars #1', () => { + provider.cachedCredentials = { + accessKeyId: 'ID', + secretAccessKey: 'SECRET', + }; return awsInvokeLocal.loadEnvVars().then(() => { expect(process.env.AWS_ACCESS_KEY_ID).to.equal('ID'); expect(process.env.AWS_SECRET_ACCESS_KEY).to.equal('SECRET'); - expect(process.env.AWS_SESSION_TOKEN).to.equal('TOKEN'); + expect('AWS_SESSION_TOKEN' in process.env).to.equal(false); }); }); + it('it should set credential env vars #2', () => { + provider.cachedCredentials = { sessionToken: 'TOKEN' }; + return awsInvokeLocal + .loadEnvVars() + + .then(() => { + expect(process.env.AWS_SESSION_TOKEN).to.equal('TOKEN'); + expect('AWS_ACCESS_KEY_ID' in process.env).to.equal(false); + expect('AWS_SECRET_ACCESS_KEY' in process.env).to.equal(false); + }); + }); + it('should fallback to service provider configuration when options are not available', () => { awsInvokeLocal.provider.options.region = null; awsInvokeLocal.serverless.service.provider.region = 'us-west-1';